elvishman
سه شنبه 09 تیر 1394, 23:55 عصر
سلام .. با عرض معذرت خدمت اساتید و مدیران محترم سایت . خواهشمندم در صورتی که جای سوال درست نیست تاپیک رو نبندید و اجازه بدید پاسخ مشکلم رو پیدا کنم .
من چند سال پیش برنامه نویسی c# انجام میدادم .. و بعد از چند سال دوری با استفاده از تکه سورس کدها یه برنامه ای رو برای بانک نوشتم . کار این برنامه جستجو و فیلتر کردن کلمات ورودی به تکست باکس هست که فیلتر رو از طریق فیلد کومبو باکس انجام میده و جستجو رو در کولومن انتخابی انجام میده . مشکل اینجاست که جستجو در این برنامه فقط در بین کلمات اول انجام میشه . به فرض دیتا بیس من دارای عبارت " دفاتر معین اداره معاملات ریالی " هست . در این برنامه جستجو فقط برای کلمه دفاتر ممکن هست و برای سایر کلمات جستجو دارای نتیجه نیست . من سورس کامل برنامه رو وارد میکنم . تا دوستان و اساتید محترم راهنمایی کنند . ممنونم .
using System;using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
using System.IO;
namespace dgv_filter
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
String connect = @"provider=microsoft.jet.oledb.4.0;" + @"data source=" + Application.StartupPath + "/dbs.mdb";
OleDbConnection con;
OleDbCommand command;
OleDbDataAdapter adapter;
DataTable objDataTable;
private void load()
{
try
{
con = new OleDbConnection(connect);
con.Open();
string query = "select madde,family,name,ncode,emha from zirna";
command = new OleDbCommand();
command.CommandText = query;
command.Connection = con;
adapter = new OleDbDataAdapter();
adapter.SelectCommand = command;
objDataTable = new DataTable();
adapter.Fill(objDataTable);
con.Close();
dataGridView1.DataSource = objDataTable;
dataGridView1.Columns[0].HeaderText = "ماده";
dataGridView1.Columns[0].Width = 80;
dataGridView1.Columns[1].HeaderText = "ردیف";
dataGridView1.Columns[1].Width = 100;
dataGridView1.Columns[2].HeaderText = "بند";
dataGridView1.Columns[2].Width = 70;
dataGridView1.Columns[3].HeaderText = "شرح مواد آئین نامه";
dataGridView1.Columns[3].Width = 70;
dataGridView1.Columns[4].HeaderText = "وضعیت امحاء";
dataGridView1.Columns[4].Width = 70;
}
catch { MessageBox.Show("سیستم به بانک اطلاعاتی وصل نشده است"); this.Dispose(); }
}
private void Form1_Load(object sender, EventArgs e)
{
load();
}
void serach()
{
string query = null;
try
{
switch (comboBox1.Text)
{
case "بند": { query = "SELECT name,family,ncode,madde,emha FROM zirna WHERE name LIKE '" + textBox1.Text + "%'"; break; }
case "ردیف": { query = "SELECT name,family,ncode,madde,emha FROM zirna WHERE family LIKE '" + textBox1.Text + "%'"; break; }
case "شرح مواد آئین نامه": { query = "SELECT name,family,ncode,madde,emha FROM zirna WHERE ncode like '" + textBox1.Text + "%'"; break; }
case "ماده": { query = "SELECT name,family,ncode,madde,emha FROM zirna WHERE madde LIKE '" + textBox1.Text + "%'"; break; }
case "وضعیت امحاء": { query = "SELECT name,family,ncode,madde,emha FROM zirna WHERE emha LIKE '" + textBox1.Text + "%'"; break; }
default: { break; }
}
con = new OleDbConnection(connect);
con.Open();
command = new OleDbCommand();
command.CommandText = query;
command.Connection = con;
adapter = new OleDbDataAdapter();
adapter.SelectCommand = command;
objDataTable = new DataTable();
adapter.Fill(objDataTable);
con.Close();
dataGridView1.DataSource = objDataTable;
}
catch { }
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
serach();
}
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
private void button4_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start(@"C:\1.pdf");
}
private void button5_Click(object sender, EventArgs e)
{
Form3 f3 = new Form3();
f3.Show();
}
private void button3_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.Show();
}
private void button1_Click(object sender, EventArgs e)
{
if (MessageBox.Show(" مطمئن هستید که قصد خروج دارید ؟", "خروج از برنامه", MessageBoxButtons.OKCancel) == DialogResult.OK)
{
Application.Exit();
}
}
private void groupBox1_Enter(object sender, EventArgs e)
{
}
}
}
تصویر محیط برنامه :
132789
من چند سال پیش برنامه نویسی c# انجام میدادم .. و بعد از چند سال دوری با استفاده از تکه سورس کدها یه برنامه ای رو برای بانک نوشتم . کار این برنامه جستجو و فیلتر کردن کلمات ورودی به تکست باکس هست که فیلتر رو از طریق فیلد کومبو باکس انجام میده و جستجو رو در کولومن انتخابی انجام میده . مشکل اینجاست که جستجو در این برنامه فقط در بین کلمات اول انجام میشه . به فرض دیتا بیس من دارای عبارت " دفاتر معین اداره معاملات ریالی " هست . در این برنامه جستجو فقط برای کلمه دفاتر ممکن هست و برای سایر کلمات جستجو دارای نتیجه نیست . من سورس کامل برنامه رو وارد میکنم . تا دوستان و اساتید محترم راهنمایی کنند . ممنونم .
using System;using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
using System.IO;
namespace dgv_filter
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
String connect = @"provider=microsoft.jet.oledb.4.0;" + @"data source=" + Application.StartupPath + "/dbs.mdb";
OleDbConnection con;
OleDbCommand command;
OleDbDataAdapter adapter;
DataTable objDataTable;
private void load()
{
try
{
con = new OleDbConnection(connect);
con.Open();
string query = "select madde,family,name,ncode,emha from zirna";
command = new OleDbCommand();
command.CommandText = query;
command.Connection = con;
adapter = new OleDbDataAdapter();
adapter.SelectCommand = command;
objDataTable = new DataTable();
adapter.Fill(objDataTable);
con.Close();
dataGridView1.DataSource = objDataTable;
dataGridView1.Columns[0].HeaderText = "ماده";
dataGridView1.Columns[0].Width = 80;
dataGridView1.Columns[1].HeaderText = "ردیف";
dataGridView1.Columns[1].Width = 100;
dataGridView1.Columns[2].HeaderText = "بند";
dataGridView1.Columns[2].Width = 70;
dataGridView1.Columns[3].HeaderText = "شرح مواد آئین نامه";
dataGridView1.Columns[3].Width = 70;
dataGridView1.Columns[4].HeaderText = "وضعیت امحاء";
dataGridView1.Columns[4].Width = 70;
}
catch { MessageBox.Show("سیستم به بانک اطلاعاتی وصل نشده است"); this.Dispose(); }
}
private void Form1_Load(object sender, EventArgs e)
{
load();
}
void serach()
{
string query = null;
try
{
switch (comboBox1.Text)
{
case "بند": { query = "SELECT name,family,ncode,madde,emha FROM zirna WHERE name LIKE '" + textBox1.Text + "%'"; break; }
case "ردیف": { query = "SELECT name,family,ncode,madde,emha FROM zirna WHERE family LIKE '" + textBox1.Text + "%'"; break; }
case "شرح مواد آئین نامه": { query = "SELECT name,family,ncode,madde,emha FROM zirna WHERE ncode like '" + textBox1.Text + "%'"; break; }
case "ماده": { query = "SELECT name,family,ncode,madde,emha FROM zirna WHERE madde LIKE '" + textBox1.Text + "%'"; break; }
case "وضعیت امحاء": { query = "SELECT name,family,ncode,madde,emha FROM zirna WHERE emha LIKE '" + textBox1.Text + "%'"; break; }
default: { break; }
}
con = new OleDbConnection(connect);
con.Open();
command = new OleDbCommand();
command.CommandText = query;
command.Connection = con;
adapter = new OleDbDataAdapter();
adapter.SelectCommand = command;
objDataTable = new DataTable();
adapter.Fill(objDataTable);
con.Close();
dataGridView1.DataSource = objDataTable;
}
catch { }
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
serach();
}
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
private void button4_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start(@"C:\1.pdf");
}
private void button5_Click(object sender, EventArgs e)
{
Form3 f3 = new Form3();
f3.Show();
}
private void button3_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.Show();
}
private void button1_Click(object sender, EventArgs e)
{
if (MessageBox.Show(" مطمئن هستید که قصد خروج دارید ؟", "خروج از برنامه", MessageBoxButtons.OKCancel) == DialogResult.OK)
{
Application.Exit();
}
}
private void groupBox1_Enter(object sender, EventArgs e)
{
}
}
}
تصویر محیط برنامه :
132789