こんな感じになります。
まずはXAMLです。Grid内だけ変えています。
次は、ModelViewです。
using Microsoft.Win32; using System.Windows; using System.Windows.Media.Imaging; using OpenCvSharp; using OpenCvSharp.Extensions; namespace LivetSample.ViewModels { public class MainWindowViewModel : ViewModel { public void Initialize() { } #region FileUri変更通知プロパティ private string _FileUri; public string FileUri { get { return _FileUri; } set { if (_FileUri == value) return; _FileUri = value; RaisePropertyChanged(); } } #endregion #region WBitmap変更通知プロパティ private WriteableBitmap _WBitmap; public WriteableBitmap WBitmap { get { return _WBitmap; } set { if (_WBitmap == value) return; _WBitmap = value; RaisePropertyChanged(); } } #endregion #region FileOpenCommand private ViewModelCommand _FileOpenCommand; public ViewModelCommand FileOpenCommand { get { if (_FileOpenCommand == null) { _FileOpenCommand = new ViewModelCommand(FileOpen); } return _FileOpenCommand; } } public void FileOpen() { OpenFileDialog dlg = new OpenFileDialog(); dlg.Title = "ファイルを開く"; dlg.Filter = "画像ファイル|*.jpg"; if (dlg.ShowDialog() == true) { FileUri = dlg.FileName; using(var img = new IplImage(FileUri)) { WBitmap = img.ToWriteableBitmap(); } } } #endregion } }
0 件のコメント:
コメントを投稿