2011-12-23 18 views
0

私はflowlayoutpanelコントロールにロードするカスタムコントロールを持っていますが、それはうまく表示されますが、物事の「選択」された面をどこで処理するかを少し問題があります。その2つの部分の問題の種類。flowlayoutpanelのカスタムコントロール - 選択した項目

1つは、私はコントロールのラベルをクリックすると、今はコントロールonclickをトリガーしないので、私は単一のオブジェクト(その表示コントロール、ボタンなど)として動作するようにコントロールが必要です。

他の部分は、どのように選択項目を取得しますか?

今私は私のカスタムクラスのオブジェクト(データ)およびカスタムコントロールのコンストラクタの一覧<>を持っているが、これらのアイテムのいずれかを取ることができ、私はループ、そのリストを考えるとflowlayoutpanelにで

Foreach(CItem item in MyItems) 
{ 
flowlayout1.controls.add(new MyControl(item))} 

を作成しますコントロールのEnter/Leaveイベントの背景色を変更しました。選択した場所を更新する必要がありますが、どこがベストかは分かりません

また、カスタムのすべてのコントロールコントロール

public MyControl(CItem mv) 
    { 
     InitializeComponent(); 
     foreach (Control ctrl in this.Controls) 
     { 
      ctrl.Enter +=new EventHandler(MyControl_Enter); 
      ctrl.Leave +=new EventHandler(MyControl_Leave); 
     } 

    ........ 

答えて

0

Bindable FlowLayoutPanelを作成しました。これには、選択したインデックスの設定(選択したコントロールに応じてハイライト表示)が含まれていました。私はcode reviewサイトに投稿しました。それをチェックし、それがあなたのために働くかどうか私に知らせてください。

関連する問題