PDA

View Full Version : سوال: انتخاب کردن chekbox در دیتاگرید؟



sajadjamalian
دوشنبه 01 شهریور 1389, 10:21 صبح
سلام دوستان :
من یه دیتاگرید دارم که یکی از ستون هاش chekbox هست، حالا چطور میتونم با کلیک اونا رو تیک بزنم یا اگه تیک دارن اونارو بدون تیک کنم؟

مهدی فرزاد
دوشنبه 01 شهریور 1389, 11:39 صبح
سلام
شما بايد اول خاصيت قابل ويرايش بودن ديتا گريدت رو True كني
و بعد در هنگام ثبت اطلاعات در بانك مقدار فيلد مورد نظر رو برابر مقدار چك باكس مربوطش در ديتا گريد ميگذاري

C Sharp
دوشنبه 01 شهریور 1389, 11:59 صبح
void gridviewMain_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
DataGridViewCell cell = gridviewMain.Rows[e.RowIndex].Cells[e.ColumnIndex];
if (cell is DataGridViewCheckBoxCell)
{
cell.Value = (cell.Value is bool) ? !((bool)cell.Value) : true;
}
}

#aliyari_C
دوشنبه 01 شهریور 1389, 17:20 عصر
سلام


CheckBox box = new CheckBox();
box.DataBinding += new EventHandler(this.BindData);
container.Controls.Add(box);

بعدش هم


public void BindData(object sender, EventArgs e)
{
CheckBox box = (CheckBox) sender;
DataGridItem container = (DataGridItem) box.NamingContainer;
box.Checked = false;
box.Enabled = (readOnly == true) ? false:true;
string data = ((DataRowView) container.DataItem)[dataField].ToString();
Type type = ((DataRowView)
container.DataItem).DataView.Table.Columns[dataField].DataType;
if (data.Length>0)
{
switch (type.ToString())
{
case "System.Boolean":
if ( data == "True")
{
box.Checked = true;
}
break;
default:
break;
}
}
}


یه نگاه بنداز: http://www.dotnetspark.com/kb/151-add-checkbox-inside-datagridview-windows.aspx
موفق باشی
__________________________________________________ __________________________________________________
چون به دریا می توانی راه یافت
سوی یک قطره چرا باید شتافـت

بی تو ای آزادی ای والا کلام گر نباشی در میان باید که از دنیا گریخت...