我的程序當前包含一個數據網格視圖,該數據網格視圖鏈接到包含樹視圖的彈出窗口。我有一個函數返回用戶選擇,我想在按鈕上顯示這個選擇。在數據網格視圖按鈕上顯示用戶選擇列
有關如何做到這一點的任何想法?我找不到允許我這樣做的財產。
由於
我的程序當前包含一個數據網格視圖,該數據網格視圖鏈接到包含樹視圖的彈出窗口。我有一個函數返回用戶選擇,我想在按鈕上顯示這個選擇。在數據網格視圖按鈕上顯示用戶選擇列
有關如何做到這一點的任何想法?我找不到允許我這樣做的財產。
由於
「A數據網格視圖鏈接到含有樹視圖的彈出窗口」 - 一個小區(按鈕)被點擊時,一個彈出窗口顯示了在它的樹視圖。樹視圖中的字符串由用戶在樹視圖中選擇,並作爲公共屬性保存在彈出窗口中。關閉時,從彈出窗口中檢索字符串,並將按鈕的文本設置爲字符串。
這是我對這個問題的解釋。
不知道關於按鈕的更多精確信息,它假定該按鈕是DataGridViewButtonColumn的成員。
void ClassForm_Load(object sender, EventArgs e)
{
datagridview1.CellMouseDown -= MouseClick;
datagridview1.CellMouseDown += MouseClick;
}
void MouseClick(object sender, DataGridViewCellEventArgs e)
{
DataGridView dgv = sender as DataGridView;
if(dgv == null) return;
DataGridViewButtonCell b = dgv.Rows[e.RowIndex].Cells[e.ColumnIndex] as DataGridViewButtonCell;
if (b != null)
{
MyPopupTreeWindow myPopupTreeWindow = new MyPopupTreeWindow(optional information from button);
myPopupTreeWindow.ShowDialog();
string userSelectedString = myPopupTreeWindow.userSelectedString;
datagridview1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = userSelectedString;
}
}
你可以給你的按鈕命令名稱,然後 gridview的rowcommand
<asp:GridView ID="DataGridView" runat="server" AutoGenerateColumns="False" OnRowCommand="DataGridView_RowCommand">
<Columns>
<asp:BoundField NullDisplayText="N/A" />
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="yourCommandName">LinkButton</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
protected void DataGridView_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "yourCommandName")
{
//Do something here
}
}