2013-01-08 38 views
0

我有一組自定義驗證程序,用於更改每個文本框或下拉列表的邊框顏色。所有作品都很棒。我也在使用HtmlEditorExtender。我用div元素包圍它,使其與其他文本框(2px純灰色)相同。C#自定義驗證 - 更改div邊框顏色

我的難處在於,如果HtmlEditorExtender爲空,我將激發自定義驗證器來更改div的邊框。

這裏是我如何調用自定義驗證一個TextBox

protected void CustomValidatorNewsText_ServerValidate(object sender, ServerValidateEventArgs args) 
    { 
     args.IsValid = isValid(tbNewsStandFirst); 
    } 

protected bool isValid(System.Web.UI.WebControls.TextBox MyBox) 
    { 
     bool is_valid = MyBox.Text != ""; 
     MyBox.BorderColor = is_valid ? System.Drawing.Color.LightSlateGray : System.Drawing.Color.Crimson; 
     return is_valid; 
    } 

我想要做的是與div的ID代替Mybox.BorderColor,但我似乎無法找到正確的語法(我已經添加runat到div)。

有什麼建議嗎?

乾杯, 麻木

回答

1

如果你已經設置的股利爲RUNAT(也給了它一個id),類似下面應該工作:

this.divId.Style.Add(HtmlTextWriterStyle.BorderColor, System.Drawing.ColorTranslator.ToHtml(is_valid ? System.Drawing.Color.LightSlateGray : System.Drawing.Color.Crimson)); 
+0

好極了!這個技巧完全謝謝psantiag。 – ComfortablyNumb