例外 | 解説 |
---|---|
System.NotSupportedException | プロパティは、基本の Form または UserControl で定義された UltraToolbarsManager 内のツールバーに対してデザインタイムに修正されます。継承されたツールバーは、作成された Form または UserControl のデザイナーを通して、ランタイムまたはデザインタイムに修正される必要があります。 |
System.NotSupportedException | プロパティはランタイムに修正されます。 |
System.ArgumentException | 割り当てた値が null または空です。 |
System.ArgumentException | 指定された値は同じコレクション内の別のツールバーの Key に一致します。キーは大文字と小文字を区別せずに比較されます。 |
Key プロパティはユーザーが定義する一意のオブジェクト識別文字列で、コードを通じてオブジェクトにアクセスするときにオブジェクトの Index と同じように使用できます。コレクション内で一意でない値を Key プロパティに割り当てようとすると、エラーが発生します。
オブジェクトの Index プロパティの値は、オブジェクトの追加や削除などによってコレクション内のオブジェクトの順序が変更されたときに変わることがあります。Index プロパティが動的に変化すると想定される場合は、Key プロパティを使用してコレクション内のオブジェクトを参照します。また、Key プロパティを使用してコレクション内のオブジェクトに意味のある名前を割り当てることで、プログラムを「自己文書化」することができます。
Imports System.Diagnostics Imports Infragistics.Win Imports Infragistics.Win.UltraWinToolbars Private Sub Button16_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button16.Click Debug.WriteLine("Properties of all currently defined toolbars ------------------------") Debug.IndentLevel += 1 Dim toolbar As UltraToolbar For Each toolbar In Me.UltraToolbarsManager1.Toolbars If toolbar Is Nothing Then GoTo NextToolbar End If Debug.WriteLine("Toolbar '" + toolbar.Key + "'") Debug.IndentLevel += 1 ' ツールバーの DockedColumn、DockedRow、DockedPosition、FloatingLocation、および ' FloatingSize プロパティをアクセスします Select Case toolbar.DockedPosition Case DockedPosition.Floating Dim rectFloating As New Rectangle(toolbar.FloatingLocation, toolbar.FloatingSize) Debug.WriteLine("Toolbar '" + toolbar.Key + "' is floating. Its position and size are: " + rectFloating.ToString()) Case DockedPosition.Top Case DockedPosition.Bottom Case DockedPosition.Left Case DockedPosition.Right Debug.WriteLine("Toolbar '" + toolbar.Key + "' is docked in position '" + toolbar.DockedPosition.ToString() + "'. Its DockedRow is: " + toolbar.DockedRow.ToString() + ", and its DockedColumn is: " + toolbar.DockedColumn.ToString()) End Select ' ツールバーの Index プロパティにアクセスします Debug.WriteLine("Toolbar '" + toolbar.Key + "' has an Index in its parent collection of: " + toolbar.Index.ToString()) ' ツールバーの IsMainMenuBar プロパティにアクセスします If toolbar.IsMainMenuBar = True Then Debug.WriteLine("Toolbar '" + toolbar.Key + "' is a main menu bar!") Else Debug.WriteLine("Toolbar '" + toolbar.Key + "' is NOT a main menu bar!") End If ' ツールバーの IsStockToolbar プロパティにアクセスします If toolbar.IsStockToolbar = True Then Debug.WriteLine("Toolbar '" + toolbar.Key + "' is a stock toolbar!") Else Debug.WriteLine("Toolbar '" + toolbar.Key + "' is NOT a stock toolbar!") End If ' ツールバーの ParentCollection プロパティにアクセスします If Not toolbar.ParentCollection Is Nothing Then Debug.WriteLine("Toolbar '" + toolbar.Key + "' is in a collection that contains a total of " + toolbar.ParentCollection.Count.ToString() + " entries") End If ' ツールバーの ShowInToolbarList プロパティにアクセスします If toolbar.ShowInToolbarList = True Then Debug.WriteLine("Toolbar '" + toolbar.Key + "' will appear in the toolbar list") Else Debug.WriteLine("Toolbar '" + toolbar.Key + "' will NOT appear in the toolbar list!") End If Debug.IndentLevel -= 1 NextToolbar: Next Debug.IndentLevel -= 1 End Sub
using System.Diagnostics; using Infragistics.Win; using Infragistics.Win.UltraWinToolbars; private void button16_Click(object sender, System.EventArgs e) { Debug.WriteLine("Properties of all currently defined toolbars ------------------------"); Debug.IndentLevel++; foreach(UltraToolbar toolbar in this.ultraToolbarsManager1.Toolbars) { if (toolbar == null) continue; Debug.WriteLine("Toolbar '" + toolbar.Key + "'"); Debug.IndentLevel ++; // ツールバーの DockedColumn、DockedRow、DockedPosition、FloatingLocation、および // FloatingSize プロパティにアクセスします switch (toolbar.DockedPosition) { case DockedPosition.Floating: Rectangle rectFloating = new Rectangle(toolbar.FloatingLocation, toolbar.FloatingSize); Debug.WriteLine("Toolbar '" + toolbar.Key + "' is floating. Its position and size are: " + rectFloating.ToString()); break; case DockedPosition.Top: case DockedPosition.Bottom: case DockedPosition.Left: case DockedPosition.Right: Debug.WriteLine("Toolbar '" + toolbar.Key + "' is docked in position '" + toolbar.DockedPosition.ToString() + "'. Its DockedRow is: " + toolbar.DockedRow.ToString() + ", and its DockedColumn is: " + toolbar.DockedColumn.ToString()); break; } // ツールバーの Index プロパティにアクセスします Debug.WriteLine("Toolbar '" + toolbar.Key + "' has an Index in its parent collection of: " + toolbar.Index.ToString()); // ツールバーの IsMainMenuBar プロパティにアクセスします if (toolbar.IsMainMenuBar == true) Debug.WriteLine("Toolbar '" + toolbar.Key + "' is a main menu bar!"); else Debug.WriteLine("Toolbar '" + toolbar.Key + "' is NOT a main menu bar!"); // ツールバーの IsStockToolbar プロパティにアクセスします if (toolbar.IsStockToolbar == true) Debug.WriteLine("Toolbar '" + toolbar.Key + "' is a stock toolbar!"); else Debug.WriteLine("Toolbar '" + toolbar.Key + "' is NOT a stock toolbar!"); // ツールバーの ParentCollection プロパティにアクセスします if (toolbar.ParentCollection != null) Debug.WriteLine("Toolbar '" + toolbar.Key + "' is in a collection that contains a total of " + toolbar.ParentCollection.Count.ToString() + " entries"); // ツールバーの ShowInToolbarList プロパティにアクセスします if (toolbar.ShowInToolbarList == true) Debug.WriteLine("Toolbar '" + toolbar.Key + "' will appear in the toolbar list"); else Debug.WriteLine("Toolbar '" + toolbar.Key + "' will NOT appear in the toolbar list!"); Debug.IndentLevel--; } Debug.IndentLevel--; }