如何为HTML选择服务器控件制作扩展属性
本文关键字:扩展 属性 服务器控件 选择 HTML | 更新日期: 2023-09-27 18:09:57
我想为控件<asp:DropdownList ID="ddlUser" runat="server" />
添加一个扩展属性。
我可以为<select id="selectUser" runat="server" />
创建.SelectedValue
属性吗所以我可以在c#中使用这个属性所以我可以使用ddlUser.SelectedValue
。
在HTML <select runat="server">
控件中有一些属性需要扩展。
selectUser.Value
(需要扩展.SelectedValue属性)
ddlUser.SelectedValue
你不能在c# 3.0或4.0中做扩展属性。但是,您可以执行以下操作
定义一个helper类作为扩展名
public static class SelectExtensionHelper
{
public static string SelectedValue(this System.Web.UI.HtmlControls.HtmlSelect select)
{
return select.Items[select.SelectedIndex].ToString();
}
}
而在ASP页面:
<select id="selectUser" runat="server" >
<option id="op1id" value="val1id"> option1 </option>
<option id="op2id" value="val2id"> option2 </option>
<option id="op3id" value="val3id"> option3 </option>
</select>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click"
PostBackUrl="~/Default.aspx" Text="Button" />
在需要的地方使用:
Response.Write("The value is:"+ selectUser.SelectedValue() + " Done");
你可以用扩展方法代替;)