我已经找到了这篇文章:
http://www.dotnetcurry.com/ShowArticle.aspx?ID=181&AspxAutoDetectCookieSupport=1
但我有不同的情况。我在主页面中嵌入了一些hiddenFields并试图将dragPanel的位置存储在那些中。
我使用javascript来存储dragPanel的位置,然后当用户点击链接时,会加载新页面,但是dragPanel会重置为起始位置。
有没有简单的方法可以做到这一点?
伪代码:
**this is in MasterPage.master**
function pageLoad()
{
// call the savePanelPosition when the panel is moved
$find('DragP1').add_move(savePanelPosition);
var elem = $get("<%=HiddenField1.ClientID%>");
if(elem.value != "0")
{
var temp = new Array();
temp = elem.value.split(';');
// set the position of the panel manually with the retrieve value
$find('<%=Panel1_DragPanelExtender.BehaviorID%>').set_location(new
Sys.UI.Point(parseInt(temp[0]),parseInt(temp[1])));
}
}
function savePanelPosition()
{
var elem = $find('DragP1').get_element();
var loc = $common.getLocation(elem);
var elem1 = $get("<%=HiddenField1.ClientID%>");
// store the value in the hidden field
elem1.value = loc.x + ';' + loc.y;
}
<asp:Button ID="Button1" runat="server" Text="Button"/>
<asp:HiddenField ID="HiddenField1" runat="server" Value="0"
但是, HiddenField 在重定向的页面中不可见,foo.aspx
答案 0 :(得分:1)
不是将位置信息存储在隐藏字段中,而是将其存储在cookie中。信息很小,因此对页面加载性能的影响很小。
答案 1 :(得分:0)
保存功能以像素为单位保存,因此当您移动到另一个“分辨率”时,面板将关闭。你知道吗?
P.S。我可以弹出一条消息,说明用户更改他们的显示器设置,哈哈......