考虑包含多个节点的TreeView控件。选择节点时,文本框上会显示某些信息。可以修改和保存此信息。意外地,如果用户导航到不同的节点而没有保存,则会显示一个弹出窗口,要求用户保存或取消操作。如果单击取消,则所选内容应保留在以前选定的节点上,而不是新节点上。显示弹出的逻辑写在TreeView的NodeMouseClick()事件中。有什么办法可以做到这一点吗?。下面是示例代码片段。
private void TreeView1_NodeMouseClick(object sender,
TreeNodeMouseClickEventArgs e)
{
DialogResult dr = MessageBox.Show("Cancel
Clicked......!!!","Information", MessageBoxButtons.OKCancel,
MessageBoxIcon.Information);
if(dr == DialogResult.Cancel)
{
//Need to handle previous node selection
}
}
private void TreeView1_BeforeSelect(object sender, TreeViewCancelEventArgs e)
{
e.Cancel = true;
}
您可以在TreeView
的Beforeselect
事件中执行此操作。
如果为beforeselect
事件添加了一个事件处理程序,该事件处理程序实际上只执行e.cancel=true
,那么您将永远无法选择节点,因为每次都会取消选择。相反,您需要在beforeselect
事件中显示您的消息框,并根据消息框的结果设置e.cancel
。
private void treeView1_BeforeSelect(object sender, TreeViewCancelEventArgs e)
{
if (DataIsDirty())
{
if (MessageBox.Show(
"Unsaved changes detected. Press OK to switch nodes and lose the change, or Cancel to stay on the current node.",
"Unsaved Changes Detected",
MessageBoxButtons.OKCancel) == DialogResult.Cancel)
{
e.Cancel = true;
}
}
}
下载整个项目。zip在这里 此问题的代码在Views文件夹中的CreateSchedule.aspx文件中。 以下是GridView的ASP.NET: 在取消选中某个框后调试事件时,网页上的复选框显示为未选中,但的值为true,即使该复选框在网页上显示为未选中。(chkRow是未选中的复选框) 更新3 我取得了一些突破。我发现复选框的问题在于嵌套的gridview位于使用JavaScript折叠和
我试图在按钮单击事件上清除Popup=>ListView中的选中复选框。 我尝试过循环listview并将property设置为false,但这不起作用。 在此处输入代码x:class=“uc.mainpage”xmlns=“http://schemas.microsoft.com/winfx/2006/xaml/presentation”xmlns:x=“http://schemas.micro
问题内容: 我不确定如何在我的方法中编写弹出消息框的代码。 我试图在我的方法中使用它,但是它不起作用: 问题答案: javax.swing.JOptionPane 这是我想弹出一个信息框时所调用的方法的代码,它将占据屏幕,直到被接受为止: 第一个参数(在此示例中)用于对齐对话框。使其在屏幕上居中,但是可以指定任何内容,而对话框将显示在屏幕中央。 我倾向于使用String来描述调用该框的代码在哪里,
我正在使用这个库来实现节点kafka与消费者暂停和恢复方法来处理背压。我已经创建了一个小演示,我可以在其中和,但问题是在后它停止了消费消息。 这是我的代码。 任何人都可以帮助我,我在恢复消费者时做错了什么?当我启动使用者时,它只接收一条消息,并且在恢复后仍然不消耗任何其他消息。
同一代码以不同的方式生成并设置和(也不同)。我发送一个,邀请为0,取消为1。UID在匹配对之间总是一致的。我错过了什么?
如果某个条件为真,是否有方法取消primefaces树中节点的选择事件? 我想显示一个对话框,如果用户选择“取消”选项,则不应更改选择。我曾尝试从p:ajax调用javascript函数,但还是选择了新节点。 我必须重写Primefaces树的默认行为? PF6.2