2017-06-19 57 views
1

我的程序當前包含一個數據網格視圖,該數據網格視圖鏈接到包含樹視圖的彈出窗口。我有一個函數返回用戶選擇,我想在按鈕上顯示這個選擇。在數據網格視圖按鈕上顯示用戶選擇列

有關如何做到這一點的任何想法?我找不到允許我這樣做的財產。

由於

回答

0

「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; 
     } 
    } 
0

你可以給你的按鈕命令名稱,然後 gridview的rowcommand

<asp:GridView ID="DataGridView" runat="server" AutoGenerateColumns="False" OnRowCommand="DataGridView_RowCommand"> 
     <Columns> 
      <asp:BoundField NullDisplayText="N/A" /> 
      <asp:TemplateField> 
       <ItemTemplate> 
        &nbsp;<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 
       } 
    } 
相關問題