C# 如何在没有模式的情况下将源MediaCapture绑定到CaptureElement?
我在WindowsPhone8.1上编写应用程序。我使用的是没有模式的MVVM。 我无法确定如何将MediaCapture对象绑定到视图中的CaptureElement。 我知道这个话题重复了,但我尝试了这个解决方案 我的代码XAML:C# 如何在没有模式的情况下将源MediaCapture绑定到CaptureElement?,c#,mvvm,windows-phone-8.1,C#,Mvvm,Windows Phone 8.1,我在WindowsPhone8.1上编写应用程序。我使用的是没有模式的MVVM。 我无法确定如何将MediaCapture对象绑定到视图中的CaptureElement。 我知道这个话题重复了,但我尝试了这个解决方案 我的代码XAML: <ContentControl HorizontalAlignment="Left" Width="320" Height="140" Content="{Binding CaptureElement}"Margin="40,183,0,
<ContentControl HorizontalAlignment="Left"
Width="320" Height="140" Content="{Binding CaptureElement}"Margin="40,183,0,257"/>
因为你的代码不完整。我不确定你到底遇到了什么问题。或者你就是不知道怎么写。我这里有一个完整的解决方案,可以满足您的要求。我已经测试过了 XAML代码
<ContentControl HorizontalAlignment="Left" Width="320" Height="140" Content="{Binding CaptureElement}" Margin="40,183,0,257"/>
在视图模式下
class MyViewModel: NotificationBase
{
private MediaCapture _mediaCapture;
public MediaCapture MediaCapture
{
get
{
if (_mediaCapture == null) _mediaCapture = new MediaCapture();
return _mediaCapture;
}
set
{
_mediaCapture = value;
}
}
private CaptureElement _captureElement;
public CaptureElement CaptureElement
{
get
{
if (_captureElement == null) _captureElement = new CaptureElement();
return _captureElement;
}
set
{
_captureElement = value;
}
}
public MyViewModel()
{
ConfigureMedia();
}
private async void ConfigureMedia()
{
await MediaCapture.InitializeAsync();
CaptureElement.Source = MediaCapture;
await MediaCapture.StartPreviewAsync();
}
}
同时上传此演示,您可以下载以进行测试。因为您的代码不完整。我不确定你到底遇到了什么问题。或者你就是不知道怎么写。我这里有一个完整的解决方案,可以满足您的要求。我已经测试过了 XAML代码
<ContentControl HorizontalAlignment="Left" Width="320" Height="140" Content="{Binding CaptureElement}" Margin="40,183,0,257"/>
在视图模式下
class MyViewModel: NotificationBase
{
private MediaCapture _mediaCapture;
public MediaCapture MediaCapture
{
get
{
if (_mediaCapture == null) _mediaCapture = new MediaCapture();
return _mediaCapture;
}
set
{
_mediaCapture = value;
}
}
private CaptureElement _captureElement;
public CaptureElement CaptureElement
{
get
{
if (_captureElement == null) _captureElement = new CaptureElement();
return _captureElement;
}
set
{
_captureElement = value;
}
}
public MyViewModel()
{
ConfigureMedia();
}
private async void ConfigureMedia()
{
await MediaCapture.InitializeAsync();
CaptureElement.Source = MediaCapture;
await MediaCapture.StartPreviewAsync();
}
}
同时上传此演示,您可以下载测试。非常感谢!在你的帮助下,我解决了这个问题,非常感谢你!在你的帮助下,我解决了这个问题