WPFウィンドウでCanvasを使用してUserControlを表示しています。同じUserControlをCanvasに追加したくありません。
どうやってやるの?
現在私がやった。
private void OpenChild(UserControl ctrl)
{
ctrl.Uid = ctrl.Name;
if (JIMSCanvas.Children.Count == 0)
{
JIMSCanvas.Children.Add(ctrl);
}
else
{
foreach (UIElement child in JIMSCanvas.Children)
{
if (child.Uid == ctrl.Uid)
{
MessageBox.Show("Already");
}
else
{
JIMSCanvas.Children.Add(ctrl);
}
}
}
}
このようなUserControlを追加します
OpenChild(new JIMS.View.Ledger());
それは私のために働きますが、私が他のコントロールを追加すると
OpenChild(new JIMS.View.Stock());
と呼ばれる例外をスローします
コレクションが変更されたため、列挙子は無効です。