\r
public partial class OctopusIDSelector : UserControl {\r
\r
+ private string id;\r
public ClearCheckBox clearCheckBox { get; set; }\r
\r
public bool Disposeabel { get; set; }\r
bindingRundowns.Add(actualRundown);\r
bindingRundown.DataSource = bindingRundowns;\r
comboRudowns.SelectedIndex = selectedRundownIndex == -1 ? 0 : selectedRundownIndex;\r
+ InitCheckID(treeContent.Nodes);\r
}\r
\r
private void refreshStoryFolders() {\r
bindingStoryFolders.Add(actualStoryFolder);\r
bindingStoryFolder.DataSource = bindingStoryFolders;\r
comboStoryFolder.SelectedIndex = selectedStoryFolderIndex == -1 ? 0 : selectedStoryFolderIndex;\r
+ InitCheckID(treeContent.Nodes); \r
+ }\r
+\r
+ private void InitCheckID(TreeNodeCollection collection) {\r
+ if (!String.IsNullOrEmpty(id)) {\r
+ foreach (TreeNode actual in collection) {\r
+ if (actual.Text.StartsWith(id)) {\r
+ actual.Checked = true;\r
+ break;\r
+ } else\r
+ InitCheckID(actual.Nodes);\r
+\r
+ }\r
+ }\r
}\r
\r
private void treeContent_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e) {\r
if (String.IsNullOrEmpty(e.Node.Name))\r
return;\r
- IDChangedEvent?.Invoke(e.Node.Name);\r
+ TreeNode node = e.Node;\r
+ //meghívódik az InnerAfterCheck\r
+ e.Node.Checked = !e.Node.Checked;\r
}\r
\r
public void IDChangeEventCalledFromOutside(string id) {\r
if (checkFromCode)\r
return;\r
TreeNode node = e.Node;\r
+ InnerAfterCheck(node);\r
+ }\r
+\r
+ private void InnerAfterCheck(TreeNode node) {\r
string text = node.Name;\r
checkFromCode = false;\r
clearCheckBox?.Invoke();\r
ClearSelectionSource(node, treeContent.Nodes);\r
- if (node.Checked) \r
- IDChangedEvent?.Invoke(text);\r
- else\r
- IDChangedEvent?.Invoke(string.Empty);\r
+ id = node.Checked ? text : string.Empty;\r
+ IDChangedEvent?.Invoke(id);\r
checkFromCode = false;\r
}\r
\r