【问题标题】:How to set properties of usercontrol from markup如何从标记设置用户控件的属性
【发布时间】:2012-12-18 18:48:22
【问题描述】:

我在任何地方都找不到这个简单问题的答案。
因此,假设我的 MyUserControl 具有这样的公共属性:

    public int myInt
        {
            get
            {
                return (int)ViewState[MyKey];
            }

            set
            {
                ViewState[MyKey] = value;
            }
        }

我可以做的是我可以把这个控件放在页面上,然后在 page_load 上设置这个属性,如下所示:

controlId.myInt =10;  

但是我怎样才能用(可能)智能的标记来做同样的事情。像这样:

<myNamesplace:MyUserControl Id="controlId" runat="server" myInt="10" />

【问题讨论】:

  • 你的这个代码应该可以工作。
  • 我在@tucaz,提供的代码应该可以正常工作。
  • @tucaz,但是 intellisense 没有列出这些属性,另外,我想有一些可用的值来弹出。
  • 拥有智能感知并使其工作是两件不同的事情。如果您想要智能感知,请查看@malkassem 回复

标签: c# asp.net class


【解决方案1】:

您需要先在页面上注册包含该控件的程序集:

<%@ Register Assembly="your.assembly" Namespace="your.namespace" TagPrefix="myNamespace" %>

然后智能感知应该把它捡起来。

【讨论】:

  • 不,即使像您显示的那样注册它也无法正常工作。我通过 src="mypathtocontrol" 注册它
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多