2016-03-14 25 views
0

我在Windows Phone 8.1上編寫應用程序。我正在使用沒有模式的MVVM。 我不能如何將MediaCapture對象綁定到視圖中的CaptureElement。 我知道這託皮重複,但我嘗試這個解決方案如何將源MediaCapture綁定到沒有模式的CaptureElement?

我的XAML代碼:

<ContentControl HorizontalAlignment="Left"   
Width="320" Height="140" Content="{Binding CaptureElement}"Margin="40,183,0,257"/> 
在我的ViewModel

private CaptureElement _captureElement; 
public CaptureElement CaptureElement 
{ 
    get 
    { 
     return _captureElement; 
    } 

    set 
    { 
     _captureElement = value; OnChange("CaptureElement"); } 
    } 
} 

回答

0

因爲你的代碼是不完整的。我不確定你真的遇到了哪個問題。或者你只是不知道該怎麼寫。我有一個完整的解決方案,可以滿足您的要求。我已經測試過。

XAML代碼

<ContentControl HorizontalAlignment="Left" Width="320" Height="140" Content="{Binding CaptureElement}" Margin="40,183,0,257"/> 

在後面的MainPage代碼()

MyViewModel view = new MyViewModel(); this.DataContext = view;   

鑑於模式

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(); 
    } 

} 

鋁所以上傳這個演示here,你可以下載進行測試。

+0

非常感謝你! 在你的幫助下,我解決了這個問題 – fmal

相關問題