
请各位指导下,谢谢了
C# DataGridView
------解决方案--------------------
有一个控件 可以包容其他控件并显示。把 datagridview 加入到那个东西里就可以了。具体名字我忘记了
------解决方案--------------------
你可以把第二个DataGridView放进ToolStripDropDown里,以菜单栏的形式显示,给你一个简单的演示在窗体里放两个DataGridView第一个添加两列AAA、BBB,代码如下
ToolStripDropDown toolStripDropDown = new ToolStripDropDown();
ToolStripControlHost toolStripControlHost;
public Form12()
{
InitializeComponent();
DataTable dataTable = new DataTable();
dataTable.Columns.AddRange(
new DataColumn[] {
new DataColumn("CCC"),
new DataColumn("DDD") });
dataTable.Rows.Add(new object[] { "1", "A" });
dataTable.Rows.Add(new object[] { "2", "B" });
dataTable.Rows.Add(new object[] { "3", "C" });
dataGridView2.DataSource = dataTable;
toolStripControlHost = new ToolStripControlHost(dataGridView2);
toolStripDropDown.Items.Add(toolStripControlHost);
toolStripDropDown.Margin =
toolStripDropDown.Padding =
toolStripControlHost.Margin =
toolStripControlHost.Padding = Padding.Empty;
toolStripDropDown.AutoSize = true;
}
int row1 = -1;
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
row1 = e.RowIndex;
toolStripDropDown.Show(MousePosition);
}
private void dataGridView2_CellClick(object sender, DataGridViewCellEventArgs e)
{
dataGridView1[0, row1].Value = dataGridView2[0, e.RowIndex].Value;
dataGridView1[1, row1].Value = dataGridView2[1, e.RowIndex].Value;
toolStripDropDown.Hide();
}