當前位置: 首頁>>代碼示例>>C#>>正文


C# TreeNodeCollection.OfType方法代碼示例

本文整理匯總了C#中System.Windows.Forms.TreeNodeCollection.OfType方法的典型用法代碼示例。如果您正苦於以下問題:C# TreeNodeCollection.OfType方法的具體用法?C# TreeNodeCollection.OfType怎麽用?C# TreeNodeCollection.OfType使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在System.Windows.Forms.TreeNodeCollection的用法示例。


在下文中一共展示了TreeNodeCollection.OfType方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: TreeContainsOnlyOneReportNode

		private bool TreeContainsOnlyOneReportNode(TreeNodeCollection nodes)
		{
			if (nodes.Count > 1)
			{
				return false;
			}

			foreach (var n in nodes.OfType<TreeNode>())
			{
				if (n.Tag == _MakeExpandableNodeTag)
				{
					return false;
				}

				ConcreteTemplateNodeDefinition nodeDef = n.Tag as ConcreteTemplateNodeDefinition;

				if (nodeDef == null)
				{
					return false;
				}

				if (nodeDef.TemplateNode.GetParentQuery() != null)
				{
					return false;
				}

				var hasReport = !string.IsNullOrEmpty(nodeDef.TemplateNode.XslTemplateFileName);

				if (hasReport)
				{
					return n.Nodes.Count == 0;
				}

				return TreeContainsOnlyOneReportNode(n.Nodes);
			}

			return false;
		}
開發者ID:saycale,項目名稱:MSSQLServerAuditor,代碼行數:38,代碼來源:ConnectionTabControl.RefreshQueries.cs

示例2: ScanNode

 private TreeNode ScanNode(string path, TreeNodeCollection nodes)
 {
     foreach (var node in nodes.OfType<TreeNode>())
     {
         if (node.FullPath == path) return node;
         if (node.Nodes.Count > 0)
         {
             var ret = this.ScanNode(path, node.Nodes);
             if (ret != null) return ret;
         }
     }
     return null;
 }
開發者ID:moctis,項目名稱:ComputerCraftEditor,代碼行數:13,代碼來源:Form1.cs

示例3: ExpandNodeToLoadTemplate

		/// <summary>
		/// Expand node.
		/// </summary>
		private void ExpandNodeToLoadTemplate(Stack<String> templatesToExpand, TreeNodeCollection nodes, string selectTemplateId, Action finalAction)
		{
			if (templatesToExpand != null)
			{
				if (templatesToExpand.Count > 0)
				{
					var currentId = templatesToExpand.Pop();

					var currentTemplateToExpand = nodes.OfType<TreeNode>().FirstOrDefault(x =>
						x.Tag is ConcreteTemplateNodeDefinition &&
						(x.Tag as ConcreteTemplateNodeDefinition).TemplateNode.Id == currentId);

					if (currentTemplateToExpand != null && !currentTemplateToExpand.IsExpanded)
					{
						if (currentId == selectTemplateId)
						{
							Invoke(finalAction);
						}
						else
						{
							this.ContinueWith = () =>
							{
								Invoke(
									new Action(
										() => ExpandNodeToLoadTemplate(
											templatesToExpand,
											currentTemplateToExpand.Nodes,
											selectTemplateId,
											finalAction
										)
									)
								);

								this.ContinueWith = null;
							};

							currentTemplateToExpand.Expand();
						}
					}
				}
			}
		}
開發者ID:saycale,項目名稱:MSSQLServerAuditor,代碼行數:45,代碼來源:ConnectionTabControl.RefreshQueries.cs

示例4: ClearNodes

 private void ClearNodes(TreeNodeCollection collection)
 {
     foreach (SPTreeNode item in collection.OfType<SPTreeNode>())
     {
         item.Dispose();
     }
     collection.Clear();
 }
開發者ID:lucaslra,項目名稱:SPM,代碼行數:8,代碼來源:TreeViewComponent.cs


注:本文中的System.Windows.Forms.TreeNodeCollection.OfType方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。