我已经创建了基于点网络控件的简单控件。例如,有一个简单的基于Grid网格控件的GridView控件,我只是在我的控件中设置了一些设置,以便在我的.aspx页面中使用它,例如我在构造方法中设置了GridView的宽度:生成本地资源的问题和我的简单自定义控件
// constructor of my custom class
public GridView(): base()
{
this.Width = new Unit(100, UnitType.Percentage);
}
而且我已经添加了自定义属性:
public int SelectedID
{
get
{
if (ViewState["SelectedID" + this.ID] == null)
ViewState["SelectedID" + this.ID] = "-1";
return Convert.ToInt32(ViewState["SelectedID" + this.ID]);
}
set
{
ViewState["SelectedID" + this.ID] = value;
}
}
的* 问题 *:当我使用工具>生成本地资源在VS2010
的ASPX标记之前,我用这个工具是这样的:
<RPC:GridView ID="grdData" runat="server" onrowcommand="grdData_RowCommand">
但是这个工具添加了任何公共财产或任何设置,我的aspx标记,像这样:
<RPC:GridView ID="grdData" runat="server" onrowcommand="grdData_RowCommand"
meta:resourcekey="grdDataResource1" SelectedID="-1" Width="100%">
我不喜欢VS2010将我的设置(如宽度)和我的自定义属性(如SelectedID)添加到aspx标记,这样可以防止我改变自定义控制代码并反映包含此控件的所有aspx页面的更改,例如,如果
我改变了我的控件的宽度到50%,它不反映任何网页
请告诉我,我应该怎么做才能解决我的问题
非常感谢您对您的反馈
PS:您可能还想探索用适当的ParseChildren属性来装饰您的控件类 – Nikhil 2011-03-02 11:00:15
非常感谢,它确实有效 – 2011-03-02 12:00:20
非常感谢Nikhil – 2011-03-02 12:12:21