您可以使用CommandParameter将Canvas传递给ViewModel的Save方法
<Button Content="Save"
Command="{Binding SaveCanvasCommand}"
CommandParameter="{Binding ElenementName=myCanvas}" ?>
<Canvas x:Name="myCanvas">
<!-- Stuff to save -->
</Canvas>
Run Code Online (Sandbox Code Playgroud)
在你的ViewModel或Command中的某个地方
void SaveCanvasCommandExecute(object parameter)
{
UIElement toSave = (UIElement)parameter;
//.. You'd probably use RenderTargetBitmap here to save toSave.
}
Run Code Online (Sandbox Code Playgroud)