在客户端访问用户控件 属性
access the user control property at clinet side
我有一个用户控件 - FilterPanel.ascx 在 QuickSearch.aspx[=15= 上使用了两次]
<dx:ASPxRoundPanel ID="filterPanel" ClientInstanceName="filterPanel" runat="server" ShowCollapseButton="True" CssClass="contentPanel" CornerRadius="0">
<ContentPaddings Padding="0px" />
<HeaderStyle CssClass="contentPanelHeader" ImageSpacing="0px" ForeColor="#FFFFFF" BackColor="#5A81B3" />
<PanelCollection>
<dx:PanelContent>
<dx:ASPxTextBox runat="server" ID="txtdxKeyword" Width="139px" Height="18px" Visible="True" NullText="Keyword">
<ClientSideEvents LostFocus="function(s,e) { FilterCheckbox_CheckChanged(s,'FILTER:TEXTBOX'); }" GotFocus="function(s,e) { CheckMode('FILTER'); }"></ClientSideEvents>
</dx:ASPxTextBox>
</dx:PanelContent>
</PanelCollection>
</dx:ASPxRoundPanel>
FilterPanel.ascx.cs 得到一个 属性 Mode
public SearchResultsGridUpdateMode Mode { set; get; }
protected void Page_Load(object sender, EventArgs e)
{
if (Mode == SearchResultsGridUpdateMode.Filter)
{
Header = "Filter";
hfMode.Value = "Filter";
}
else if (Mode == SearchResultsGridUpdateMode.Exclusion)
{
Header = "Exclusion";
hfMode.Value = "Exclusion";
}
else
Header = string.Empty;
filterPanel.HeaderText = Header;
}
枚举-
public enum SearchResultsGridUpdateMode
{
Filter,
Exclusion
}
QuickSearch.aspx
<asp:Content ID="QuickSearchLeftContent" runat="server" ContentPlaceHolderID="SearchMasterLeftContentPlaceHolder">
<table style="border-collapse: collapse; margin: 0 auto;">
<tr>
<td>
<uc1:FilterPanel ID="ucFilterPanel" runat="server" Mode="Filter"/>
</td>
</tr>
<tr>
<td>
<uc1:FilterPanel ID="ucExclusionPanel" runat="server" Mode="Exclusion"/>
</td>
</tr>
</table>
</asp:Content>
在QuickSearch.aspx中我设置用户控件(FilterPanel.ascx)值为模式到“过滤”或“排除”
现在我想在 FilterPanel.ascx[=15= 中的任何客户端事件中为 ASPxTextBox 传递 Mode 的值]
例如 TextBox 在 FilterPanel.ascx:
上的控件
GotFocus="function(s,e) { CheckFilterMode(MODE VALUE);}
是否可以在客户端发送 UserControl 属性 值?
请帮助,
尝试这样的事情。
public SearchResultsGridUpdateMode Mode
{
set
{
this.txtdxKeyword.ClientSideEvents.GotFocus = "function(s,e) { CheckMode('" + value.ToString() + "'); }";
Header = value.ToString;
hfMode.Value = value.ToString;
}
get;
}
我有一个用户控件 - FilterPanel.ascx 在 QuickSearch.aspx[=15= 上使用了两次]
<dx:ASPxRoundPanel ID="filterPanel" ClientInstanceName="filterPanel" runat="server" ShowCollapseButton="True" CssClass="contentPanel" CornerRadius="0">
<ContentPaddings Padding="0px" />
<HeaderStyle CssClass="contentPanelHeader" ImageSpacing="0px" ForeColor="#FFFFFF" BackColor="#5A81B3" />
<PanelCollection>
<dx:PanelContent>
<dx:ASPxTextBox runat="server" ID="txtdxKeyword" Width="139px" Height="18px" Visible="True" NullText="Keyword">
<ClientSideEvents LostFocus="function(s,e) { FilterCheckbox_CheckChanged(s,'FILTER:TEXTBOX'); }" GotFocus="function(s,e) { CheckMode('FILTER'); }"></ClientSideEvents>
</dx:ASPxTextBox>
</dx:PanelContent>
</PanelCollection>
</dx:ASPxRoundPanel>
FilterPanel.ascx.cs 得到一个 属性 Mode
public SearchResultsGridUpdateMode Mode { set; get; }
protected void Page_Load(object sender, EventArgs e)
{
if (Mode == SearchResultsGridUpdateMode.Filter)
{
Header = "Filter";
hfMode.Value = "Filter";
}
else if (Mode == SearchResultsGridUpdateMode.Exclusion)
{
Header = "Exclusion";
hfMode.Value = "Exclusion";
}
else
Header = string.Empty;
filterPanel.HeaderText = Header;
}
枚举-
public enum SearchResultsGridUpdateMode
{
Filter,
Exclusion
}
QuickSearch.aspx
<asp:Content ID="QuickSearchLeftContent" runat="server" ContentPlaceHolderID="SearchMasterLeftContentPlaceHolder">
<table style="border-collapse: collapse; margin: 0 auto;">
<tr>
<td>
<uc1:FilterPanel ID="ucFilterPanel" runat="server" Mode="Filter"/>
</td>
</tr>
<tr>
<td>
<uc1:FilterPanel ID="ucExclusionPanel" runat="server" Mode="Exclusion"/>
</td>
</tr>
</table>
</asp:Content>
在QuickSearch.aspx中我设置用户控件(FilterPanel.ascx)值为模式到“过滤”或“排除”
现在我想在 FilterPanel.ascx[=15= 中的任何客户端事件中为 ASPxTextBox 传递 Mode 的值]
例如 TextBox 在 FilterPanel.ascx:
上的控件GotFocus="function(s,e) { CheckFilterMode(MODE VALUE);}
是否可以在客户端发送 UserControl 属性 值? 请帮助,
尝试这样的事情。
public SearchResultsGridUpdateMode Mode
{
set
{
this.txtdxKeyword.ClientSideEvents.GotFocus = "function(s,e) { CheckMode('" + value.ToString() + "'); }";
Header = value.ToString;
hfMode.Value = value.ToString;
}
get;
}