2010-05-13 44 views
0

我有一個網格表示網格1,其中有一些列。有一個視圖圖像按鈕,一個刪除圖像按鈕和一列表示顏色列是紅色或藍色。在GridView中獲取ID

如果顏色欄爲紅色,則刪除的按鈕被隱藏,否則顯示(根據用戶授予刪除列的權限)。

現在用戶單擊紅色列的查看按鈕。如果滿足這個條件,那麼我希望刪除圖標不應該出現在網格2中。

網格2有2列。一個是刪除圖像按鈕,另一個是文件名(通過上傳控件上傳)。

所以如果在格柵上的「查看圖像按鈕」點擊「red」的專欄中,我應該能夠從電網2

隱藏刪除按鈕我已經在項目命令編寫代碼試過,但我無法訪問grid2的控件。這是正確的方法嗎?否則,建議我一些正確的方法。

請確保代碼是2003 VS

讓我知道,如果需要更多的輸入兼容。

感謝

回答

0

grid2.Rows[<index>].Cells[<index>].FindControl("")應該工作,所提供的網格綁定數據。

編輯:在用戶控件代碼隱藏,你可以暴露格爲:

public DataGrid Grid 
{ 
    get { return this.<gridID>; } 
} 

,然後在頁面代碼隱藏,使用下面的訪問網格:

public class SomePage : Page 
{ 
    .. OnInit(..) 
    { 
     this.uc1.Grid.<props/methods> 
    } 
} 

無論你需要做什麼。你甚至可以附加到網格的事件。

+0

我在哪裏寫這個代碼?在網格1項目命令或在網格2項目命令或某些地方?另外如果他們在2個不同的用戶控制頁面中,你如何訪問任何網格的控制權?網格在相同的.aspx頁面btw。>>> – 2010-05-13 17:36:47

+1

在你想訪問網格2的對象的位置......你的文章似乎在grid1 itemcommand事件中。我沒有看到有關用戶控件的文章中的任何內容......如果它們位於同一頁面上的單獨用戶控件中,則可以在用戶控件(公共屬性Grid作爲GridView)中擁有一個公共屬性,然後引用你需要訪問的用戶控件,如在uc1.Grid.Rows [] .Cells [] .FindControl(「」) – 2010-05-13 19:11:59

+0

我正在寫你的代碼,但我面臨錯誤說 行不是DataGrid的成員.. 。我想這是DataGrid,而不是網格視圖 – 2010-05-14 06:09:38