* U K I Y A H O N P O *
Nel mezzo del cammin di nostra vita mi ritrovai per una selva oscura,
che la diritta via era smarrita.
ホーム
一覧
検索
最終更新
リンク
ヘルプ
ソース
新規
リンク
手動リンク
自動相互リンク
駄でべWiki:FrontPage
リンク元
検索キー一覧
自動相互リンク表
ヘルプ
整形ルール
プラグインマニュアル
浮子屋商店もよろしく。
C#コード断片/2.0/メニューにたくさんの項目を動的にAddする
の編集
Top
>
C#コード断片
>
2.0
> メニューにたくさんの項目を動的にAddする
* [2.0]メニューにたくさんの項目を動的にAddする場合の注意 [#lb1da2ad] メインメニューのある項目の中身をごっそり入れ替える、等、 メニューを動的に操作する際、.NET2.0では、メニューが ちらついてむやみに時間がかかる。 ** これまで [#f9d756bf] #code(Csharp,nooutline){{ menuGhost.MenuItems.Clear(); menuGhost.MenuItems.AddRange(citems); }} これまではこのコードで特に問題なかった。 (menuGhostはメインメニューの1項目とする。また、citemsは100程度の配列) ** 対処方法 [#d6d79964] #code(Csharp,nooutline){{ menuMain.MenuItems.Remove(menuGhost); menuGhost.MenuItems.Clear(); menuGhost.MenuItems.AddRange(citems); menuMain.MenuItems.Add(3, menuGhost); }} 一旦メインメニューから消した後に変更し、再度追加すれば問題はおきない。 ** 補足 [#ta93d192] コンテキストメニュー等、メインメニューに紐付いていないメニューでは 問題はおきないようだ。
タイムスタンプを変更しない
* [2.0]メニューにたくさんの項目を動的にAddする場合の注意 [#lb1da2ad] メインメニューのある項目の中身をごっそり入れ替える、等、 メニューを動的に操作する際、.NET2.0では、メニューが ちらついてむやみに時間がかかる。 ** これまで [#f9d756bf] #code(Csharp,nooutline){{ menuGhost.MenuItems.Clear(); menuGhost.MenuItems.AddRange(citems); }} これまではこのコードで特に問題なかった。 (menuGhostはメインメニューの1項目とする。また、citemsは100程度の配列) ** 対処方法 [#d6d79964] #code(Csharp,nooutline){{ menuMain.MenuItems.Remove(menuGhost); menuGhost.MenuItems.Clear(); menuGhost.MenuItems.AddRange(citems); menuMain.MenuItems.Add(3, menuGhost); }} 一旦メインメニューから消した後に変更し、再度追加すれば問題はおきない。 ** 補足 [#ta93d192] コンテキストメニュー等、メインメニューに紐付いていないメニューでは 問題はおきないようだ。