2016-10-31 12 views
0

チェックボックスのイベントに基づいて、実行時にボーダーの左隅に子コントロール(ボタン)をプログラムで追加します。チェックボックス真の値に私のコード:私は子供として追加していた場合Silverlightのボーダー内に子コントロールを追加します。

var btn = new System.Windows.Controls.Primitives.ToggleButton(); 
btn.Style = App.Current.Resources["ToggleButtonStyle"] as Style; 
ctrlBorder.Child = btn; 
ctrlBorder.Tag = btn; 

は今問題がある、など目に見えないだけBTNコントロール内の他のすべてのコントロールが表示されます。ボーダーコントロール内にbtnを追加するにはどうすればいいですか? また、チェックボックスをオフにすると、btnが消えます。

ご協力いただきありがとうございます。

+0

あなたが最初のボーダーにレイアウトパネル(例えばのStackPanelまたはGrid)を追加する必要があり、 PanelのChildrenコレクションに新しい要素を追加します。 – Clemens

答えて

0

ctrlBorder.Childを割り当てることで、その唯一の子(境界制御用に許可されているもの)を上書きします。国境の実際の子供に自分のコントロールを追加してみ

https://stackoverflow.com/a/1871229/1346098を参照してください(?グリッドのStackPanel?):

Grid tmpGrid = ctrlBorder.Child as Grid; 
tmpGrid.SetRow(btn, 3); 
tmpGrid.SetColumn(btn, 4); 
tmpGrid.Children.Add(btn); 
関連する問題