1

ツールストリップがあります。このツールストリップでは、 を追加ToolStripSplitButtonしています。このためToolStripSplitButtonに、 を含むツールストリップ項目を追加していますToolStripSeparatorToolStripSplitButtonツールストリップ項目のクリック イベントでは、以下のコードを使用してドロップダウンから項目を取得しています。

 ToolStripDropDown tditems = ((System.Windows.Forms.ToolStripDropDownItem)(items[0])).DropDown;
foreach (ToolStripMenuItem item in tditems.Items)
{
//something here
}

ドロップダウン項目にはツールストリップ項目とToolStripSeparator実行時の両方があるため、次のエラーが発生しています。

追加情報: タイプ 'System.Windows.Forms.ToolStripSeparator' のオブジェクトをタイプ 'System.Windows.Forms.ToolStripMenuItem' にキャストできません。

誰でも私を助けることができますか?

ありがとう

4

1 に答える 1

7

.NET 3.5 を使用している場合は、次のようにOfType拡張メソッドを使用できます。

foreach (var item in tditems.Items.OfType<ToolStripMenuItem>())
{
    // something here
}
于 2009-10-08T12:26:14.740 に答える