c#(vbs-15)如何填充数据网格并提供链接
抱歉,伙计们,我对c#和vbs还不熟悉。我试图做的是填充datagrid或任何等效的,然后我需要提供指向每一行的可单击按钮/链接 当用户单击按钮时,应用程序应将单击的行id传递给新(其他)表单 问题是如何提供datagrid或任何具有按钮的等效工具,用户可以单击按钮查看记录 非常感谢你的帮助 编辑c#(vbs-15)如何填充数据网格并提供链接,c#,winforms,datagrid,C#,Winforms,Datagrid,抱歉,伙计们,我对c#和vbs还不熟悉。我试图做的是填充datagrid或任何等效的,然后我需要提供指向每一行的可单击按钮/链接 当用户单击按钮时,应用程序应将单击的行id传递给新(其他)表单 问题是如何提供datagrid或任何具有按钮的等效工具,用户可以单击按钮查看记录 非常感谢你的帮助 编辑 private void dataGridView1_CellContentClick_2(object sender, DataGridViewCellEventArgs e) { plug
private void dataGridView1_CellContentClick_2(object sender, DataGridViewCellEventArgs e)
{
plugin p = new plugin();
try {
if (dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex] is DataGridViewButtonCell)
{
//I need the value of the column here member_id is only showing the rowindex and columnindex now i need the value
p.alert(dataGridView1.Rows[e.ColumnIndex].Cells[e.ColumnIndex].ToString());
}
else
{
p.alert(dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].ToString() + " on else");
}
}
catch (Exception v)
{
//p.alert("Header clicked ");
}
}
编辑-回答
dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString()
将datagridview从工具箱拖放到窗口中,使用添加按钮列或链接列的属性-->列将数据表中的所有列添加到该窗口中。 将数据绑定到网格,如下所示
DataTable dtMembers = new DataTable();
p.textquery = "SELECT * FROM members ORDER BY member_id DESC LIMIT 250";
SQLiteConnection m_dbConnection = new SQLiteConnection("Data Source=" + p.dbname() + ";Version=3;");
try
{
SQLiteDataAdapter da = new SQLiteDataAdapter(p.textquery,m_dbConnection);
m_dbConnection.Open();
da.Fill(dtMembers);
m_dbConnection.Close();
if(dtMembers.Rows.Count > 0)
dgvMembers.DataSource = dtMembers;
else
p.alert("You do not have members in the system");
}
catch
{
p.alert("SQL has error - (database error)");
return;
}
实现DataGridView单元格内容单击
private void dgvMembers_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if(dgvMembers.Rows[e.RowIndex].Cells[e.ColumnIndex] is DataGridViewButtonCell)
{
//Write your code here
}
}
请看下面我写的文本属性,点击这里,这是您需要输入按钮名称的地方
您可以在表单中创建一个datagridview并绑定数据,具体需要什么帮助?你不能绑定吗?或者你不知道如何在datagridview中放置按钮?我想两者都应该是个问题,你能给我看看这个吗?在while()上,我需要将数据显示到网格中,并且在每一行的网格中,我需要有一个按钮,在该按钮上,患者id应该分配给该按钮,并在单击该按钮时传递给另一个事件。它可以工作,但没有什么问题,首先,我通过属性-->列添加的按钮没有标签,它只是一个按钮。没有列触发任何dgvMembers_CellContentClick(),在dgvMembers_CellContentClick()上,单击如何获取患者id,因为这是从数据库获取相关数据所需的。它具有文本属性检查,您可以获取行的所有数据或将id保留在标记属性中。您需要在datagridview属性的“事件”选项卡中注册内容单击事件没有列触发任何dgvMembers_CellContentClick()表示网格未为此事件注册如果您仍然无法找到join the Yah您是对的dgvMembers_CellContentClick()没有反映正确的函数,现在我对它进行了调整,但事件没有提供成员id或任何单元格内容/文本。我只能看到ColumnIndex和RowIndex,而不是单元格的内容。p、 警报(dataGridView1.Rows[e.ColumnIndex].Cells[e.ColumnIndex].ToString());。我希望此dgvMembers_CellContentClick()接收单元格的内容,以便我可以使用它
DataTable dtMembers = new DataTable();
p.textquery = "SELECT * FROM members ORDER BY member_id DESC LIMIT 250";
SQLiteConnection m_dbConnection = new SQLiteConnection("Data Source=" + p.dbname() + ";Version=3;");
try
{
SQLiteDataAdapter da = new SQLiteDataAdapter(p.textquery,m_dbConnection);
m_dbConnection.Open();
da.Fill(dtMembers);
m_dbConnection.Close();
if(dtMembers.Rows.Count > 0)
dgvMembers.DataSource = dtMembers;
else
p.alert("You do not have members in the system");
}
catch
{
p.alert("SQL has error - (database error)");
return;
}
private void dgvMembers_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if(dgvMembers.Rows[e.RowIndex].Cells[e.ColumnIndex] is DataGridViewButtonCell)
{
//Write your code here
}
}