バージョン

Key プロパティ (ListToolItem)

コレクション内のオブジェクトを一意に識別する値を取得または設定します。
シンタックス
'宣言
 
Public Overrides Property Key As String
public override string Key {get; set;}
解説

Key プロパティが一意のユーザー定義のオブジェクト識別文字列で、コードを使用してアクセスする時にオブジェクトの Index と交互に使用できます。コレクション内で一意でない値を Key プロパティに割り当てようとすると、エラーが発生します。

オブジェクトの追加または削除時など、コレクション内のオブジェクトが並べ替えられるときに、オブジェクトの Index プロパティの値は変更できます。Index プロパティが動的に変化すると想定される場合は、Key プロパティを使用してコレクション内のオブジェクトを参照します。また、Key プロパティを使用してコレクション内のオブジェクトに意味のある名前を割り当てることで、プログラムを「自己文書化」することができます。

オブジェクトをコレクションに追加するために Add メソッドを使用するとき Key プロパティを設定できます。場合によっては、そのオブジェクトがコレクションに表示しない場合、オブジェクトの Key プロパティはブランクになる場合があります。

さらに、キーの一意性は、Key プロパティが値に設定された時に限って強制されます。コレクションがブランク キーを持つオブジェクトをサポートする場合、そのコレクションにはKey プロパティが空の複数のオブジェクトが含まれる場合があります。その場合、Index プロパティを使用して、ブランク キーを持つオブジェクト間を差別化する必要があります。

使用例
Imports System.Diagnostics
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinToolbars

	Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click

		' ----------------------------------------------------------------------------
		' PopupMenuTool を作成します
		Dim fileMenu As New PopupMenuTool("FileMenu")

		' メニューまたはツールバーに追加する前に、常に新しいツールを
		' UltraToolbarManager のルート ツール コレクションに追加します
		Me.UltraToolbarsManager1.Tools.Add(fileMenu)


		' Popup メニューのプロパティを設定します
		fileMenu.SharedProps.Caption = "&File"


		' ----------------------------------------------------------------------------
		' 標準の [ファイル] メニューのツールを作成します
		Dim newTool As New ButtonTool("New")
		Dim openTool As New ButtonTool("Open")
		Dim closeTool As New ButtonTool("Close")
		Dim saveTool As New ButtonTool("Save")
		Dim saveAsTool As New ButtonTool("SaveAs")
		Dim printTool As New ButtonTool("Print")
		Dim printPreviewTool As New ButtonTool("PrintPreview")
		Dim fileMruListTool As New ListTool("FileMRUList")
		Dim exitTool As New ButtonTool("Exit")

		' ツールのプロパティを設定します
		newTool.SharedProps.Caption = "&New"
		newTool.SharedProps.AppearancesSmall.Appearance.Image = Bitmap.FromHicon(SystemIcons.Warning.Handle)
		openTool.SharedProps.Caption = "&Open"
		openTool.SharedProps.AppearancesSmall.Appearance.Image = Bitmap.FromHicon(SystemIcons.Application.Handle)
		closeTool.SharedProps.Caption = "&Close"
		closeTool.SharedProps.AppearancesSmall.Appearance.Image = Bitmap.FromHicon(SystemIcons.Error.Handle)
		saveTool.SharedProps.Caption = "&Save"
		saveTool.SharedProps.AppearancesSmall.Appearance.Image = Bitmap.FromHicon(SystemIcons.Information.Handle)
		saveAsTool.SharedProps.Caption = "Save &As"
		saveAsTool.SharedProps.AppearancesSmall.Appearance.Image = Bitmap.FromHicon(SystemIcons.WinLogo.Handle)
		printTool.SharedProps.Caption = "&Print"
		printTool.SharedProps.AppearancesSmall.Appearance.Image = Bitmap.FromHicon(SystemIcons.Hand.Handle)
		printPreviewTool.SharedProps.Caption = "Print Pre&view"
		printPreviewTool.SharedProps.AppearancesSmall.Appearance.Image = Bitmap.FromHicon(SystemIcons.Question.Handle)
		fileMruListTool.DisplayCheckmark = False
		fileMruListTool.MaxItemsToDisplay = 10
		fileMruListTool.MoreItemsText = "More files..."

		' List ツールに MRU エントリを追加しますList ツールはメニューのみに配置できるツールです
		' ツールバーには配置できませんメニューでメニュー項目を 1 つ表示するツールの代わりに、
		' ListTool はリストで各 ListToolItem に
		' メニュー項目を 1 つ表示します
		Dim mruListItem As ListToolItem

		mruListItem = fileMruListTool.ListToolItems.Add("file1", "C:\\Temp\\bootlog1.txt")
		mruListItem.Value = "C:\\Temp\\bootlog1.txt"
		mruListItem = fileMruListTool.ListToolItems.Add("file2", "C:\\Temp\\bootlog2.txt")
		mruListItem.Value = "C:\\Temp\\bootlog2.txt"
		mruListItem = fileMruListTool.ListToolItems.Add("file3", "C:\\Temp\\bootlog3.txt")
		mruListItem.Value = "C:\\Temp\\bootlog3.txt"
		mruListItem = fileMruListTool.ListToolItems.Add("file4", "C:\\Temp\\bootlog4.txt")
		mruListItem.Value = "C:\\Temp\\bootlog4.txt"
		mruListItem = fileMruListTool.ListToolItems.Add("file5", "C:\\Temp\\bootlog5.txt")
		mruListItem.Value = "C:\\Temp\\bootlog5.txt"

		exitTool.SharedProps.Caption = "E&xit"
		exitTool.SharedProps.AppearancesSmall.Appearance.Image = Bitmap.FromHicon(SystemIcons.Warning.Handle)

		' メニューまたはツールバーに追加する前に、常に新しいツールを
		' UltraToolbarManager のルート ツール コレクションに追加します
		Me.UltraToolbarsManager1.Tools.AddRange(New ToolBase() {newTool, openTool, closeTool, saveTool, saveAsTool, printTool, printPreviewTool, fileMruListTool, exitTool})

		' ポップアップ メニューにツールを追加します
		fileMenu.Tools.AddToolRange(New String() {"New", "Open", "Close", "Save", "SaveAs", "Print", "PrintPreview", "FileMRUList", "Exit"})

		' ツールの間にセパレーターを追加します
		fileMenu.Tools("Save").InstanceProps.IsFirstInGroup = True
		fileMenu.Tools("Print").InstanceProps.IsFirstInGroup = True
		fileMenu.Tools("FileMRUList").InstanceProps.IsFirstInGroup = True
		fileMenu.Tools("Exit").InstanceProps.IsFirstInGroup = True


		' ----------------------------------------------------------------------------
		' メイン メニュー バーを作成し、ポップアップ メニューをメニュー バーに追加します
		Me.UltraToolbarsManager1.Toolbars.AddToolbar("MyMainMenuBar")

		' ツールバーをメイン メニュー バーに設定します
		Me.UltraToolbarsManager1.Toolbars("MyMainMenuBar").IsMainMenuBar = True

		Me.UltraToolbarsManager1.Toolbars("MyMainMenuBar").Tools.AddTool("FileMenu")

	End Sub

	Private Sub UltraToolbarsManager1_ToolClick(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinToolbars.ToolClickEventArgs) Handles UltraToolbarsManager2.ToolClick

		Select Case (e.Tool.Key)
			Case "FileMRUList"
				Debug.WriteLine("The FileMRUList item with a key of '" + e.ListToolItem.Key + "', text of '" + e.ListToolItem.Text + "', Index of '" + e.ListToolItem.Index + "' and Value of '" + e.ListToolItem.Value.ToString() + "' was clicked.")

		End Select

	End Sub
using System.Diagnostics;
using Infragistics.Win;
using Infragistics.Win.UltraWinToolbars;

		private void button6_Click(object sender, System.EventArgs e)
		{

			// ----------------------------------------------------------------------------
			// PopupMenuTool を作成します
				PopupMenuTool fileMenu = new PopupMenuTool("FileMenu");

				// メニューまたはツールバーに追加する前に、常に新しいツールを
				// UltraToolbarManager のルート ツール コレクションに追加します
				this.ultraToolbarsManager1.Tools.Add(fileMenu);


				// Popup メニューのプロパティを設定します
				fileMenu.SharedProps.Caption = "&File";


			// ----------------------------------------------------------------------------
			// 標準の [ファイル] メニューのツールを作成します
				ButtonTool newTool		= new ButtonTool("New");
				ButtonTool openTool		= new ButtonTool("Open");
				ButtonTool closeTool		= new ButtonTool("Close");
				ButtonTool saveTool		= new ButtonTool("Save");
				ButtonTool saveAsTool		= new ButtonTool("SaveAs");
				ButtonTool printTool		= new ButtonTool("Print");
				ButtonTool printPreviewTool 	= new ButtonTool("PrintPreview");
				ListTool   fileMruListTool	= new ListTool("FileMRUList");
				ButtonTool exitTool		= new ButtonTool("Exit");

				// ツールのプロパティを設定します
				newTool.SharedProps.Caption					= "&New";
				newTool.SharedProps.AppearancesSmall.Appearance.Image	= Bitmap.FromHicon(SystemIcons.Warning.Handle);
				openTool.SharedProps.Caption					= "&Open";
				openTool.SharedProps.AppearancesSmall.Appearance.Image	= Bitmap.FromHicon(SystemIcons.Application.Handle);
				closeTool.SharedProps.Caption					= "&Close";
				closeTool.SharedProps.AppearancesSmall.Appearance.Image	= Bitmap.FromHicon(SystemIcons.Error.Handle);
				saveTool.SharedProps.Caption					= "&Save";
				saveTool.SharedProps.AppearancesSmall.Appearance.Image	= Bitmap.FromHicon(SystemIcons.Information.Handle);
				saveAsTool.SharedProps.Caption				= "Save &As";
				saveAsTool.SharedProps.AppearancesSmall.Appearance.Image= Bitmap.FromHicon(SystemIcons.WinLogo.Handle);
				printTool.SharedProps.Caption					= "&Print";
				printTool.SharedProps.AppearancesSmall.Appearance.Image	= Bitmap.FromHicon(SystemIcons.Hand.Handle);
				printPreviewTool.SharedProps.Caption				= "Print Pre&view";
				printPreviewTool.SharedProps.AppearancesSmall.Appearance.Image= Bitmap.FromHicon(SystemIcons.Question.Handle);
				fileMruListTool.DisplayCheckmark				= false;
				fileMruListTool.MaxItemsToDisplay				= 10;
				fileMruListTool.MoreItemsText					= "More files...";

				// List ツールに MRU エントリを追加しますList ツールはメニューのみに配置できるツールです
				// ツールバーには配置できませんメニューでメニュー項目を 1 つ表示するツールの代わりに、
				// ListTool はリストで各 ListToolItem に
				// メニュー項目を 1 つ表示します
				ListToolItem mruListItem = null;

				mruListItem = fileMruListTool.ListToolItems.Add("file1", "C:\\Temp\\bootlog1.txt");
				mruListItem.Value = "C:\\Temp\\bootlog1.txt";
				mruListItem = fileMruListTool.ListToolItems.Add("file2", "C:\\Temp\\bootlog2.txt");
				mruListItem.Value = "C:\\Temp\\bootlog2.txt";
				mruListItem = fileMruListTool.ListToolItems.Add("file3", "C:\\Temp\\bootlog3.txt");
				mruListItem.Value = "C:\\Temp\\bootlog3.txt";
				mruListItem = fileMruListTool.ListToolItems.Add("file4", "C:\\Temp\\bootlog4.txt");
				mruListItem.Value = "C:\\Temp\\bootlog4.txt";
				mruListItem = fileMruListTool.ListToolItems.Add("file5", "C:\\Temp\\bootlog5.txt");
				mruListItem.Value = "C:\\Temp\\bootlog5.txt";

				exitTool.SharedProps.Caption					= "E&xit";
				exitTool.SharedProps.AppearancesSmall.Appearance.Image	= Bitmap.FromHicon(SystemIcons.Warning.Handle);

				// メニューまたはツールバーに追加する前に、常に新しいツールを
				// UltraToolbarManager のルート ツール コレクションに追加します
				this.ultraToolbarsManager1.Tools.AddRange(new ToolBase [] {newTool, openTool, closeTool, saveTool, saveAsTool, printTool, printPreviewTool, fileMruListTool, exitTool} );

				// ポップアップ メニューにツールを追加します
				fileMenu.Tools.AddToolRange(new string [] {"New", "Open", "Close", "Save", "SaveAs", "Print", "PrintPreview", "FileMRUList", "Exit"} );

				// ツールの間にセパレーターを追加します
				fileMenu.Tools["Save"].InstanceProps.IsFirstInGroup		= true;
				fileMenu.Tools["Print"].InstanceProps.IsFirstInGroup		= true;
				fileMenu.Tools["FileMRUList"].InstanceProps.IsFirstInGroup	= true;
				fileMenu.Tools["Exit"].InstanceProps.IsFirstInGroup		= true;


			// ----------------------------------------------------------------------------
			// メイン メニュー バーを作成し、ポップアップ メニューをメニュー バーに追加します
				this.ultraToolbarsManager1.Toolbars.AddToolbar("MyMainMenuBar");

				// ツールバーをメイン メニュー バーに設定します
				this.ultraToolbarsManager1.Toolbars["MyMainMenuBar"].IsMainMenuBar = true;

				this.ultraToolbarsManager1.Toolbars["MyMainMenuBar"].Tools.AddTool("FileMenu");

		}

		private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
		{

			switch (e.Tool.Key)
			{
				case "FileMRUList":
					Debug.WriteLine("The FileMRUList item with a key of '" + e.ListToolItem.Key + "', text of '" + e.ListToolItem.Text + "', Index of '" + e.ListToolItem.Index + "' and Value of '" + e.ListToolItem.Value.ToString() + "' was clicked.");
					break;
			}

		}
参照