PDA

View Full Version : پیمایش در datagridview



hojjat_gh
جمعه 25 مرداد 1387, 12:06 عصر
با سلام
ایا این امکان در گرید ویو هست که بعد از پر کردن چند سطر از گرید ویو (از طریق خود گریدنه پر کردن ازطریق دیتابیس)از سطر اول تا اخر اون رو پیمایش کرد بدون اینکه مقادیر سطر ها محو بشن؟
از دوستان خواهش میکنم لینک ندن چون من اکثر مقاله ها رو (در سی شارپ و ای اس پی و.. )بررسی کردم ولی به جواب نرسیدم

Sajjad.Aghapour
جمعه 25 مرداد 1387, 13:02 عصر
بله میشه پیمایش کرد ولی منظورتون از اینکه میگید بدونه اینکه مقادیر سطرها محو بشن چیه؟؟؟؟؟
امیدوارم منظورتون رو درست گرفته باشم......


try
{
for (int i = 0; i < dataGridView1.RowCount; i++)
{
for (int j = 0; j < dataGridView1.ColumnCount; j++)
{
MessageBox.Show(dataGridView1.Rows[i].Cells[j].Value.ToString());
}
}
}
catch (Exception)
{
}

hojjat_gh
جمعه 25 مرداد 1387, 19:30 عصر
بله میشه پیمایش کرد ولی منظورتون از اینکه میگید بدونه اینکه مقادیر سطرها محو بشن چیه؟؟؟؟؟
اولا یه تشکر ویزه ازت میکنم که خیلی عالی وساده جواب دادی:تشویق:
و عیب من این بود که از راه مشکل وشاید نشدنی میخواستم وارد بشم واون این بود که
rowcount سطر هارو تو یه حلقه for انداخته بودم و کد datagridview.rowcount=i رو نوشته بودم وبه محض رسیدن به اون سطر اطلاعات خودش و سطرهای بعدیش محو میشدن راستی چرا؟
ویه سوال دیگه اینکه چطوری میشه با کد به گریدویو ستون اضافه کرد ؟
وباز هم تشکر دوباره

Sajjad.Aghapour
جمعه 25 مرداد 1387, 19:54 عصر
بهتر بود سوالت رو در یک تاپیک جدا می پرسیدی.......


DataGridViewTextBoxColumn column = new DataGridViewTextBoxColumn();
column.HeaderText = "column1";
dataGridView1.Columns.Add(column);

ستون ها می تونن مختلف باشن


DataGridViewButtonColumn
DataGridViewCheckBoxColumn
.
.

saber4166
شنبه 26 مرداد 1387, 00:23 صبح
اگر میخواهی روی یک ستون خاص جستجو کنی میتونی از این کد نظر گیری کنی :

کد:

privatevoid Finder(object sender, KeyEventArgs e)
{int ActCol = Convert.ToInt32(this.ActiveControl.Tag);
if (e.KeyCode == Keys.Enter)
{for (int i = 0; i < this.dataGridView1.Rows.Count; i++){
if (this.dataGridView1[ActCol, i].Value.ToString() == this.ActiveControl.Text){this.TeleBindingSource.Po sition = i; this.dataGridView1.Rows[i].Selected = true;break;}}}}

در اینجا Finder رویداد(event) KeyPress یک TextBox است

hojjat_gh
دوشنبه 28 مرداد 1387, 13:27 عصر
[quote=sajjadlove;574415]بهتر بود سوالت رو در یک تاپیک جدا می پرسیدی.......


DataGridViewTextBoxColumn column = newDataGridViewTextBoxColumn();
column.HeaderText = "column1";
dataGridView1.Columns.Add(column);

با سلام
دوست عزیز کد بالادو ارور زیر رو میده مشکل کجاست؟
Error 1 The best overloaded method match for 'System.Windows.Forms.DataGridViewColumnCollection .Add(System.Windows.Forms.DataGridViewColumn)' has some invalid arguments G:\????? ????\Visual Studio 2005
\Projects\atlas\atlas\FORMS\Form1.cs 318 13 atlas
Error 2 Argument '1': cannot convert from
'System.Windows.Forms.DataGridTextBoxColumn' to 'System.Windows.Forms.DataGridViewColumn' G:\????? ????\Visual Studio 2005\Projects\atlas\atlas\FORMS\Form1.cs 318 39 atlas

Sajjad.Aghapour
دوشنبه 28 مرداد 1387, 14:43 عصر
اگه همین کدها رو استفاده کردید که مشکلی نداره (البته فاصله بین new و کلمه بعدیش باید وجود داشته باشه که اینجا توی کدها وجود نداره) ولی error اول ممکنه به خاطر متد overload ی هست که در اضافه کردن ستون وجود داره.احتمالا شما در متد Add از ( " " ) استفاده کردید.یه نگاه بندازید ببینید کدها رو چطوری نوشتید.error دوم هم احتمالا با رفع error اول رفع میشه.


private void button1_Click(object sender, EventArgs e)
{
DataGridViewTextBoxColumn column = new DataGridViewTextBoxColumn();
column.HeaderText = "column1";
dataGridView1.Columns.Add(column);
}

hojjat_gh
دوشنبه 28 مرداد 1387, 17:12 عصر
جناب sajjadlove من دقیقا کد شما رو کپی کردم تو برنامه


اگه همین کدها رو استفاده کردید که مشکلی نداره (البته فاصله بین new و کلمه بعدیش باید وجود داشته باشه که اینجا توی کدها وجود نداره)
بابا درسته تازه کاریم ولی دیگه نه اینقدر

Sajjad.Aghapour
دوشنبه 28 مرداد 1387, 22:35 عصر
ببخشید منظور بدی نداشتم.ولی این کدها مشکلی نداره.یعنی راه اصولیش اینه.ولی میتونید از کد زیر هم استفاده کنید....
dataGrid.Columns.Add("name","header");(بازم معذرت می خوام)

hojjat_gh
دوشنبه 28 مرداد 1387, 23:23 عصر
کد های اولی همه چیزش درست بود فقط
مشکل اینجا بود که بعد از خط کد اخر یه دات استرینگ کم داشت:

dataGridView1.Columns.Add(column.ToString);