* UIComboTreeView: 修复使用清空按钮后,再次打开下拉框,上次的选择内容还是存在
This commit is contained in:
parent
681be2cfd3
commit
0fcb485817
@ -1,5 +1,4 @@
|
||||
using System.ComponentModel;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace Sunny.UI
|
||||
{
|
||||
@ -207,23 +206,10 @@ namespace Sunny.UI
|
||||
|
||||
private void uiCheckBox1_CheckedChanged(object sender, System.EventArgs e)
|
||||
{
|
||||
foreach (TreeNode node in treeView.Nodes)
|
||||
{
|
||||
CheckAllChildNodes(node, uiCheckBox1.Checked);
|
||||
}
|
||||
}
|
||||
|
||||
public void CheckAllChildNodes(TreeNode treeNode, bool nodeChecked)
|
||||
{
|
||||
treeNode.Checked = nodeChecked;
|
||||
foreach (TreeNode node in treeNode.Nodes)
|
||||
{
|
||||
node.Checked = nodeChecked;
|
||||
if (node.Nodes.Count > 0)
|
||||
{
|
||||
CheckAllChildNodes(node, nodeChecked);
|
||||
}
|
||||
}
|
||||
if (uiCheckBox1.Checked)
|
||||
treeView.CheckedAll();
|
||||
else
|
||||
treeView.UnCheckedAll();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -566,7 +566,6 @@ namespace Sunny.UI
|
||||
|
||||
DropDown?.Invoke(this, e);
|
||||
|
||||
|
||||
if (fullControlSelect || MouseLocation.X > Width - 30)
|
||||
{
|
||||
ButtonClick?.Invoke(this, e);
|
||||
|
@ -24,6 +24,7 @@
|
||||
* 2022-11-30: V3.3.0 增加Clear方法
|
||||
* 2023-02-04: V3.3.1 下拉框增加显示全选选择框
|
||||
* 2023-04-02: V3.3.4 显示清除按钮
|
||||
* 2023-06-12: V3.3.8 修复使用清空按钮后,再次打开下拉框,上次的选择内容还是存在
|
||||
******************************************************************************/
|
||||
|
||||
using System;
|
||||
@ -229,6 +230,7 @@ namespace Sunny.UI
|
||||
NeedDrawClearButton = false;
|
||||
Text = "";
|
||||
TreeView.SelectedNode = null;
|
||||
TreeView.UnCheckedAll();
|
||||
Invalidate();
|
||||
return;
|
||||
}
|
||||
|
@ -94,6 +94,16 @@ namespace Sunny.UI
|
||||
view.MouseClick += View_MouseClick;
|
||||
}
|
||||
|
||||
public void CheckedAll()
|
||||
{
|
||||
view.CheckedAll();
|
||||
}
|
||||
|
||||
public void UnCheckedAll()
|
||||
{
|
||||
view.UnCheckedAll();
|
||||
}
|
||||
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
base.Dispose(disposing);
|
||||
@ -1341,6 +1351,24 @@ namespace Sunny.UI
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void CheckedAll()
|
||||
{
|
||||
foreach (TreeNode node in Nodes)
|
||||
{
|
||||
node.Checked = true;
|
||||
SetChildNodeCheckedState(node, true);
|
||||
}
|
||||
}
|
||||
|
||||
public void UnCheckedAll()
|
||||
{
|
||||
foreach (TreeNode node in Nodes)
|
||||
{
|
||||
node.Checked = false;
|
||||
SetChildNodeCheckedState(node, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user