关于使用索引变量的Canvas孩子的Wpf不起作用

时间:2016-03-01 06:54:12

标签: c# wpf canvas

我有一个从

调用的方法
  

窗口构造函数(Luach是我的画布,Mishbezet是UserControl和   mish是画笔字典):

        Mishbezet m;
        Luach.Children.Clear();

        double pre_top = 0, top = 0, left = 0;

        for (int i = 0; i < NUM; i++)
        {

            for (int j = 0; j < NUM; j++)
            {
                m = new Mishbezet();
                m.Width = 80;
                m.Height = 80;
                m.C = Brushes.Transparent;

                Canvas.SetTop(m, top);
                Canvas.SetLeft(m, left);
                Luach.Children.Add(m);
                m.index = new int[4];
                m.index[0] = i;
                m.index[1] = j;
                m.index[2] = i * NUM + j;
                top += 81;
            }
            if (pre_top == 0)
                top = 40;
            else
                top = 0;
            pre_top = top;
            left += 62;
        }

        foreach (var brush in mish)
        {
            ((Mishbezet)(Luach.Children[brush.Key])).Background = brush.Value;

        }

问题在于

  <(>((Mishbezet)(Luach.Children [brush.Key]))。Background = brush.Value;

当我使用固定号码时((Mishbezet)(Luach.Children[2])).Background = brush.Value; 一切都很好,它得到了它的背景颜色,但是当使用原始语句使用int变量作为索引时,没有任何事情发生,UserControl也没有获得背景颜色。 我将不胜感激任何帮助和想法。

0 个答案:

没有答案