我有一个 Canvas ,例如类似于 this solution或许多其他使用 ItemsControl
的人。
现在我想要一个应该绑定(bind)到 ICommand 的按钮。此命令应调用可以保存图像的 ViewModel 类的方法。 保存方法很清楚,但是如何按照MVVM模式进行绑定(bind)呢?
最佳答案
您可以使用 CommandParameter 将 Canvas 传递给 ViewModel 的 Save 方法
<Button Content="Save"
Command="{Binding SaveCanvasCommand}"
CommandParameter="{Binding ElenementName=myCanvas}" ?>
<Canvas x:Name="myCanvas">
<!-- Stuff to save -->
</Canvas>
在你的 ViewModel 或 Command 中的某个地方你会拥有
void SaveCanvasCommandExecute(object parameter)
{
UIElement toSave = (UIElement)parameter;
//.. You'd probably use RenderTargetBitmap here to save toSave.
}
关于c# - 按照 MVVM 模式将 WPF Canvas 保存为图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17693516/