代码之家  ›  专栏  ›  技术社区  ›  Arctic Vowel

从包含的子项/用户控件访问包含画布的功能

  •  1
  • Arctic Vowel  · 技术社区  · 10 年前

    我正在开发一个C#metro(store)应用程序,该应用程序的UI类似于以下代码(作为示例):

    <Canvas x:Name="canvas">
    <Image x:Name="image" Canvas.Left="600" Canvas.Top="170"/>
    </Canvas>
    

    包含画布有一个函数“AddToLog(字符串文本)”,我希望画布内的对象也可以访问该函数(即这里的“image”)。图像也可以是包含在单独的*.xaml文件中的用户控件。这是可能的吗?如果是,我会怎么做?如果没有,是否有其他方法可以做到这一点?

    1 回复  |  直到 10 年前
        1
  •  1
  •   har07    10 年前

    你很容易控制住 Canvas 从…起 Image Parent 属性:

    var canvas = (Canvas)image.Parent;
    //at this point you're able to access any function defined in Canvas
    //canvas.AddToLog("something");