2011-05-02 31 views
2

我有一個帶有鏈接URL和它們各自顯示文本的數據庫。我需要檢查它們是否在GridView中顯示它們的顯示字符串之前是否損壞。顯示前的SqlDatasource進程記錄

我正在使用SqlDatasource,有沒有辦法處理記錄並使用自定義HTML標記來顯示他們,而使用SqlDataSource

我想用OnSelected事件SqlDatasource,但不能得到如何使用它。

+0

選定的事件,但我是新來的ASP所以沒有得到文件行話 – nikhil 2011-05-02 06:01:12

+0

「選定的事件」是什麼意思?你能否編輯你的問題,並解釋你到底想要做什麼,你做了什麼,什麼不起作用? – Oded 2011-05-02 06:04:27

+0

我明白你的意思但是我對如何做到這一點無能爲力,離我最近的是使用SqlDataSource1_Selected(對象發件人,SqlDataSourceStatusEventArgs e)但不知道如何獲得這個方法內的數據行 – nikhil 2011-05-02 06:19:47

回答

0

我相信你要做的是確保超鏈接在它被放入數據網格之前是有效的。爲此,您需要訂閱網格上的RowDataBound事件。從那裏,你可以運行代碼來評估你的URL。下面是一個簡單的例子,將檢查以確保URL字段不爲空字符串:

protected void selectedBookList_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    if ((e.Row != null) && (e.Row.RowType == DataControlRowType.DataRow)) 
    { 
     string test = DataBinder.Eval(e.Row.DataItem, "URL").ToString(); 

     if (test.Length == 0) 
     { 
      e.Row.Cells[3].Visible = false; 
     } 
     else 
     { 
      e.Row.Cells[3].Visible = true; 
     } 
    } 
} 

相反測試,以確保長度等於零的,你可以檢查,看看是否鏈接死或不死。一旦你評估它,你可以隱藏單元格,就像我在這裏做的那樣,或者你可以修改鏈接,放入一個通用鏈接等。

+0

謝謝你這樣做! – nikhil 2011-05-02 19:45:29