protected void btnSelectCommittee_Click(object sender, EventArgs e)
{
this.WebDialogWindow1.WindowState = Infragistics.Web.UI.LayoutControls.DialogWindowState.Normal;
}通过使用上述代码,它可以将web对话框窗口的windowState更改为可见的。现在的问题是它正在刷新页面。使用onClientClick方法和调用javascript函数似乎可以避免页面刷新。但是,我不知道如何通过Javascript更新Infragistics DialogWindowState的窗口状态。请帮帮我!
发布于 2013-09-19 04:00:49
答案相当简单,可以在不使用windowState刷新页面的情况下更改onClientClick="return showDialog();"
function showDialog() {
var dialogWindow = $find('<%=WebDialogWindow1.ClientID%>');
//Using `show()` method to display the window if the windowState is hidden
dialogWindow.show();
//using `hide()` method to hide the windowState
//dialogWindow.hide();
return false;
}发布于 2013-09-18 09:01:21
当然,它会刷新页面。服务器端句柄需要这样做才能在远程客户端产生任何更改。但是,不要忘记ASP.NET控件在JavaScript中也有一个客户端对象模型(CSOM) (您可以使用它来处理事件和操纵控件)。我认为您需要的是关于对话框窗口客户端事件的这个示例,并注意,在这里,您已经为WebDialogFrame.aspx中的Show图像按钮准备了完全相同的功能(显示按钮):
<img id="ShowDialogButton" src="<%= this.GetGlobalResourceObject("WebDialogWindow","ClientSideEvents_ShowDialogImage") %>" width="98"
height="24" alt="<%= this.GetGlobalResourceObject("WebDialogWindow","Client_Side_Events_Tooltip_1") %>" onclick="$find('<%=WebDialogWindow1.ClientID%>').set_windowState($IG.DialogWindowState.Normal);" />我已经拿出了重要的位,您可以指定作为单击处理程序的任何您认为适合的客户端,并添加了解释:
// Show the dialog
function showDialog() {
// get reference to the Infragistics.Web.UI.WebDialogWindow instance
var dialog = $find('<%=WebDialogWindow1.ClientID%>');
//perform any checks neccesary or skip them, it's ok to
//set Normal state even if the dialog is already visible
if (dialog.get_windowState() != $IG.DialogWindowState.Normal)
//set state to Normal
dialog.set_windowState($IG.DialogWindowState.Normal);
}https://stackoverflow.com/questions/18842752
复制相似问题