PDA

View Full Version : آموزش: انتقال اطلاعات از دیتا گرید به لیست باکس در صورت تیک خوردن دیتا گرید



حسین.کاظمی
شنبه 29 آذر 1393, 10:39 صبح
سلام به همگی
من در این تاپیک قصد یک آموزش ساده را برای کاربرن مبتدی دارم؛خب جریان کار این اموزش این است که در فرمتون یک dataGridView (انتهای هر سطر هم یک چک باکس وجود دارد) دارید به همراه یک listBox خب حالا میخایید وقتی هر سطری چک باکسش تیک خورد مثلا اطلاعات برخی از ستون های همون سطر در list box نمایش بده و هرعملی خاستید روش میتونید انجام بدید
1-خب ابتدا یک فرم ویندوزی ایجاد می کنید و یک dataGridView بروی فرمتون رسم میکنید(ازطریق جعبه ابزار)
2-یک list box هم بروی فرمتون ایجاد کنید
3- در رویداد CellContentClick دیتا گرید کد زیر را بنویسید
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (dataGridView1.BeginEdit(false))
dataGridView1.EndEdit();
}

4- اینبارهم بیایید در رویداد CellEndEdit دیتا گرید کدهای زیر را بنویسید

private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
try
{
if (dataGridView1.CurrentCell.ColumnIndex == 0 && dataGridView1[0, dataGridView1.CurrentRow.Index].Value.ToString() == "True")
try
{
listBox1.Items.Add(dataGridView1[1, dataGridView1.CurrentRow.Index].Value.ToString());
}
catch { }


else
{
foreach (string item in listBox1.Items)
{
string removelistitem = dataGridView1[1,dataGridView1.CurrentRow.Index].Value.ToString().Trim();
if (item.Contains(removelistitem))
{
listBox1.Items.Remove(item);
}
}

}
}
catch { }
}

البته دیتا گرید را باید بصورت دستی یا از بانک اطلاعاتی پر نمایید.
اینم تصویری از این آموزش خیلی خیلی ساده

126729


موفق باشید