2
A
回答
2
新的答案,因爲現在我知道這是Windows窗體
首先,你需要爲了設置行可編輯在用戶點擊chekbox,以避免您可以看到客戶端在某行的CELL中單擊的時間。
可以說是第一個單元格是複選框:
和第二部分的文字...
我Form1.cs的
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
dgv.DataSource = new testData[] {
new testData{ CheckBox = true, Name = "One" },
new testData{ CheckBox = true, Name = "Two" },
new testData{ CheckBox = false, Name = "Three" },
new testData{ CheckBox = false, Name = "Four" }
};
}
private void dgv_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
if (e.ColumnIndex == 0) // It's the Checkbox Column
{
DataGridViewRow dgvr = dgv.Rows[e.RowIndex];
MessageBox.Show(String.Format("Row {0} was cliked ({1})", (e.RowIndex + 1).ToString(),
dgvr.Cells[1].Value));
}
}
}
public class testData
{
public Boolean CheckBox { get; set; }
public String Name { get; set; }
}
設計代碼...只是拖一個DataGridView組件放入窗體中,命名爲dgv並在事件中雙擊事件CellMouseClick
2
這裏有一個例子:
<%@ Page Language="C#" AutoEventWireup="true" %>
<script runat="server">
public class Item
{
public string Name { get; set; }
public bool Checked { get; set; }
}
protected void Changed(object sender, EventArgs e)
{
CheckBox checkBox = sender as CheckBox;
Response.Write(checkBox.Checked.ToString());
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
grid.DataSource = new[]
{
new Item() { Name="1", Checked = true },
new Item() { Name="2", Checked = false }
};
grid.DataBind();
}
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="grid" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<%# Eval("Name") %>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="check" runat="server" Checked='<%# Eval("Checked") %>' OnCheckedChanged="Changed" AutoPostBack="true" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</form>
</body>
</html>
+0
這是一個好的做法,在此之後檢查vs null。 CheckBox checkBox = sender as CheckBox; if(checkBox = null)return; 或使用直接投射然後 CheckBox checkBox =(CheckBox)sender; 否則你會對新開發者形成壞習慣;) 歡迎來到nitpickers俱樂部:D ... – 2009-01-20 12:53:51
相關問題
- 1. GridView中的複選框檢查事件
- 2. GridView複選框列與事件
- 3. 我在gridview上的複選框不會觸發事件
- 4. 獲取GridView中的複選框選中的事件
- 5. 複選框在GridView控件
- 6. 在複選框事件的GridView中查找texbox控件CheckedChanged
- 7. 的GridView rowediting事件動態複選框,DateTimePicker控件
- 8. gridview上的動態複選框
- 9. 複選框,在GridView
- 10. GridView複選框列
- 11. 獲取GridView中Check_changed事件的複選框列的值
- 12. 複選框的onkeyup事件
- 13. 的onclick複選框事件
- 14. RowCommand事件替代GridView中的複選框
- 15. Custom Control GridView Control中的複選框事件
- 16. 添加帶有CheckedChanged事件的複選框到動態GridView
- 17. asp.net gridview複選框選擇
- 18. gridview中的複選框控件
- 19. 帶有複選框的Gridview
- 20. 複選框中的GridView
- 21. 複選框中的GridView
- 22. gridView中的複選框
- 23. jquery,複選框選擇所有不啓用其他複選框上的事件
- 24. 複選框上的火災事件.change()*在複選框出現後被選中。
- 25. 按鈕單擊事件複選框(在gridview內)回發問題
- 26. 從itemtemplate複選框事件獲取gridview列和行
- 27. 複選框「檢查」事件
- 28. onclick事件,使複選框
- 29. jqGrid複選框事件
- 30. JavaScript - 複選框和事件
在Windows應用程序中沒有GridView,有一個DataGridView;) - GridView是一個Web控件。 – balexandre 2009-01-21 15:07:52