自定义控件保存属性 我定义了一个自定义控件,继承自WebControl我想保存 控件的一些属性,比如宽,高,innerText等,搜了好多资料不得吃呀,请高手支个招 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 [Category("Appearance"), NotifyParentProperty(true), Description("数据源")] public DataTable DataBindDataSource { get { return (DataTable)ViewState["DataBindDataSource"]; } set { ViewState["DataBindDataSource"] = value; } 可是我的一些属性是在客户端修改的耶比如在JS里面改变了 Height属性,那么在服务器端怎么读取该属性 服务器控件只在服务器上存在,其属性只有在服务器上才能理解。例如上面的DataBindDataSource 既可能输出到客户端(__ViewState隐藏域)也可能根本不输出(例如放在Session里),设计上根本不是给客户端使用的。控件仅仅在“释放”前翻译为html字符流输出到客户端,至于客户端干了什么,根本不关心。如果你确实想在ui界面上输点什么值,使用普通的控件来实现,而不是使用控件的属性。 用隐藏域是一个比较合适的方法,因为你是与脚本做交互.ViewState无法用. 难道用户获得一个属性还要用写脚本??——————————————————————————————————————————你不是在写控件呢嘛。你要求用户写的任何东西,都可以封装在控件里,用户仅需要拖拉鼠标。至于说你说的TextBox控件,它使用ViewState来保存,例如你就无法在javascript中简单地修改TextMode属性的值。可以用页面的片段缓存来实现,具体用法,到网上搜一下——————————————————————————————————————————根据问题无关,我猜是发错了帖子了。 已成功与服务器建立连接,但是在登录过程中发生错误!! MVC的修改 添加操作!(急) iBatis.Net membership功能解决方案? 关于数据同步问题? 关于datalist GridView的固定表头,页面有时隐藏 请问一下用httpModules后的问题 DropDownList控件如何绑定远程的xml DATAGRID更新出错 vs2005 ASP.NET_SessionId 有问题 FileUpload选取文件后想执行一段事件 自定义控件中,我已经定义了属性的Get和Set,但是在属性设计器给这个属性赋值却不能赋值
public DataTable DataBindDataSource
{
get
{
return (DataTable)ViewState["DataBindDataSource"];
}
set
{
ViewState["DataBindDataSource"] = value;
}
ViewState无法用.
——————————————————————————————————————————
你不是在写控件呢嘛。你要求用户写的任何东西,都可以封装在控件里,用户仅需要拖拉鼠标。
至于说你说的TextBox控件,它使用ViewState来保存,例如你就无法在javascript中简单地修改TextMode属性的值。可以用页面的片段缓存来实现,具体用法,到网上搜一下
——————————————————————————————————————————
根据问题无关,我猜是发错了帖子了。