C# 怎么获取dategridview中checkbox的值

C# 怎么获取dategridview中checkbox的值,第1张

我是初学,我是用这个实现checkbox反选的功能,你看看能适合你用不:

(bool)datagridviewRows[0]Cells[0]EditedFormattedValue

这条语句就是将单元格内的值变成true和false;

比如我用的时候第一行,第一列,为checkbox,那么

if((bool)datagridviewRows[0]Cells[0]EditedFormattedValue == true)

{

//选中状态

}

else

{

//未选中状态

}

当然,同理你也能获得它的值。例如你建一个bool变量来保存状态

bool checkboxstate;

checkboxstate = (bool)datagridviewRows[0]Cells[0]EditedFormattedValue;

//checkboxstate 要是为true 那就是选中的false未选中

再附上一段我用来实现功能的代码,希望可以帮到你。

/// <summary>

/// Datagridview全选 反选 不选 不选 编缉

/// </summary>

/// <param name="dgvControll">控件名称</param>

/// <param name="selectfiles">主键字段</param>

/// <param name="dgvselecttype">类型 全选 反选 不选 编缉</param>

public void DataGridViewSelect(DataGridView dgvControll, string selectfiles, ControllSelectType dgvselecttype)

{

int dgvcount = dgvControllRowsCount;

switch (dgvselecttype)

{

case ControllSelectTypeall_select: //全选

for (int i = 0; i < dgvcount; i++)

{

dgvControllRows[i]Cells[selectfiles]Value = true;

}

break;

case ControllSelectTypenull_select: //不选

for (int i = 0; i < dgvcount; i++)

{

dgvControllRows[i]Cells[selectfiles]Value = false;

}

break;

case ControllSelectTypeInverse_select: //反选

for (int i = 0; i < dgvcount; i++)

{

if ((bool)dgvControllRows[i]Cells[selectfiles]EditedFormattedValue)

{

dgvControllRows[i]Cells[selectfiles]Value = false;

}

else

{

dgvControllRows[i]Cells[selectfiles]Value = true;

}

}

break;

protected void Page_Load(object sender, EventArgs e)

{

CheckBox chk = new CheckBox();

chkText = "testall"; // 这里可以换成数据库的内容

chkCheckedChanged += new EventHandler(chk_CheckedChanged);

chkAutoPostBack = true;

PageFormControlsAdd(chk);

for (int i = 0; i < 10; i++)

{

CheckBox chk2 = new CheckBox();

chk2Text = "test" + iToString(); // 这里可以换成数据库的内容

chk2Checked = (i % 3 == 0); // 这里可以换成数据库的内容

PageFormControlsAdd(chk2);

}

}

void chk_CheckedChanged(object sender, EventArgs e)

{

CheckBox all = sender as CheckBox;

foreach(Control ctl in PageFormControls)

{

if (ctl is CheckBox)

{

CheckBox chk = ctl as CheckBox;

chkChecked = allChecked;

}

}

}

我想你要用到后台吧,那么就不能仅仅停留在前端了。

建议你给每一行的checkbox加一个name属性,比如

<input type='checkbox' value='显示' value='0' name='ckb' class='cls'>

<input type='checkbox' value='执行' value='0' name='ckb' class='cls'>

<input type='checkbox' value='更新' value='0' name='ckb' class='cls'>

值默认为0,在前台,当你选中某一个时,将其值改为1,js代码,需要用jquery

$(function(){

$("cls")click(function(){

thisvalue=1;

})

})

然后在后台用 RequestForm["ckb"]来接受checkbox的值,

就受到的值就例如这样 1 ,0 ,1

以上就是关于C# 怎么获取dategridview中checkbox的值全部的内容,包括:C# 怎么获取dategridview中checkbox的值、如何获取选中checkbox值、用Javascript怎么获取 checkbox 所选中的行的、列的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9534731.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存