我正在使用C#WinForms。我想在网格中显示数据。网格必须能够响应行上的点击。什么是最好的组件?
答案 0 :(得分:4)
他正在谈论类似按钮点击的事件。 DataGridView应该能够包含下拉菜单等控件,因此您可以添加依赖于所选单元格的响应。
尝试
private void GetData(string selectCommand)
{
// Specify a connection string. Replace the given value with a
// valid connection string for a Northwind SQL Server sample
// database accessible to your system.
String connectionString =
"Integrated Security=SSPI;Persist Security Info=False;" +
"Initial Catalog=Northwind;Data Source=localhost";
// Create a new data adapter based on the specified query.
dataAdapter = new SqlDataAdapter(selectCommand, connectionString);
// Create a command builder to generate SQL update, insert, and
// delete commands based on selectCommand. These are used to
// update the database.
SqlCommandBuilder commandBuilder = new SqlCommandBuilder(dataAdapter);
// Populate a new data table and bind it to the BindingSource.
DataTable table = new DataTable();
table.Locale = System.Globalization.CultureInfo.InvariantCulture;
dataAdapter.Fill(table);
bindingSource1.DataSource = table;
// Resize the DataGridView columns to fit the newly loaded content.
dataGridView1.AutoResizeColumns(
DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
}
private void Form1_Load(object sender, System.EventArgs e)
{
// Bind the DataGridView to the BindingSource
// and load the data from the database.
dataGridView1.DataSource = bindingSource1;
GetData("select * from Customers");
}
答案 1 :(得分:0)
的DataGridView。 但我不明白你的意思是“他的网格必须能够响应行上的点击”。
编辑:您可以使用datagridview中的各种事件来跟踪哪一行,哪一列以及您单击了哪个单元格。此外,Gridview还支持列中的Button,LinkButton和Image等控件。
答案 2 :(得分:0)
您必须无法使用数据网格的整行选择属性,然后在行单击或双击(无论您想要的话)事件上添加代码。
答案 3 :(得分:0)
在DataGrid中,您有一个事件。如果您执行以下操作,则可以管理CLick。
public Form1()
{
InitializeComponent();
dataGridView1.RowStateChanged += new DataGridViewRowStateChangedEventHandler(dataGridView1_RowStateChanged);
}
void dataGridView1_RowStateChanged(object sender, DataGridViewRowStateChangedEventArgs e)
{
DataGridViewRow dgvr = e.Row;
//GetDataFrom Database to fill other Grid
}