2011-06-08 83 views
0

標題不言而喻,但情況就是如此。 我有一個包含2個gridviews的頁面。 第一個用於搜索要使用的產品。這些文章可以添加到其他gridview。 這第二個gridview包含所有具有textbow的選定項目,用戶可以在其中更改想要使用的數量。ValidatorCalloutExtender不在Gridview中顯示

現在問題出現了,我在文本框中添加了一個valdiator,以確保金額​​不高於股票中可用的金額。

我將ValidatorCalloutExtender添加到此驗證程序中。無論何時進行驗證,都不會顯示消息。驗證器的工作原理是,我無法繼續進行下去,直到我將金額更改爲正確的值。

我用來定製ValidatorCalloutExtender的css類適用於我所有的其他頁面。它不在gridview中使用。

有沒有什麼辦法可以使gridview的editTemplate中沒有使用這個工作?

回答

2

我假設它不工作,因爲ValidationGroup。它對於所有GridView行應該是唯一的。例如,這可以通過使用GridView的RowDataBound事件以編程方式設置它來實現:

protected void GridView1_RowDataBound(object sender, System.Web.UI.WebControls.GridViewRowEventArgs e) 
{ 
     if (e.Row.RowType == DataControlRowType.DataRow) 
     { 
      TextBox tbx = (TextBox)e.Row.FindControl("MyTextBox"); 
      RequiredFieldValidator rfv = (RequiredFieldValidator)e.Row.FindControl("MyReq"); 
      string validationGroupText = "ValidationTest" + (e.Row.DataItemIndex + 1).ToString(); 
      tbx.ValidationGroup = validationGroupText; 
      rfv.ValidationGroup = validationGroupText; 
     } 
} 
+0

那麼它看起來像它的工作現在。我的驗證器肯定有問題。在我深入研究這件事情後,我設法讓它起作用。現在我只需要確保始終檢查驗證。我想我需要擺脫我的分頁。不確定。 – Beejee 2011-06-08 14:48:45