ViewModel'i Görünüm'e bağlamanın iki yolunu görebiliyorum. Biri XAML'de ve diğer kodlar da arkadaki kodda.ViewModel'i Silverlight'ta Görünümüne Bağlama
Hangi yöntem daha çok tercih edilir? Ben xaml yöntemini tercih ediyorum çünkü kodda hiç kod istemiyorum, ama diğeriyle ilgili bir sorun var mı?
<navigation:Page x:Class="MyNamespace.MyViewModel"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:ViewModel="clr-namespace:MyNameSpace.MyViewModel"
xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
Title="ViewModel Page" >
<navigation:Page.Resources>
<ViewModel:MyViewModel x:Key="ViewModel"></ViewModel:MyViewModel>
</navigation:Page.Resources>
<Grid x:Name="LayoutRoot" Background="White"
DataContext="{StaticResource ViewModel}">
</Grid>
</navigation:Page>
VEYA
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Windows.Navigation;
namespace MyNamespace
{
public partial class MyView : Page
{
public MyView()
{
InitializeComponent(MyViewModel viewModel);
this.DataContext = viewModel;
}
}
}
Hmm .. bağlantı için teşekkürler. Şimdi okuyacağım. Sanırım birkaç kez daha okumalıyım çünkü bir şey alamıyorum. Shawn, "Her iki yöntemde de görüş modelinin görüşünün yapışkanlığını sevmemeye eğilimliyim. Ayrıca, her ikisi de ortak bir durum olsa da, her zaman durumun olmadığı bire bir ilişkiyi ima ediyor. ." Ancak, İlk Bakışta, birçok görüntüleme bir VM'ye veri olarak gönderilebilir. Bir görünüm birden fazla VM'ye bağlı olabilir mi? hmmm .. Yine, eğer V'niz farklı VM'lere bağlı olmak isteyebilecek basit bir ızgaraysa sanırım. –
Şimdiye kadar, Vs ve VM'ler arasında bire bir ilişki tutmanın hayranıyım. Bu bir hiyerarşiye karşı olduğum anlamına gelmez. Yani, bir Görünüm kendi VM'sine sahip alt görünümler içerebilir ve bunun oldukça iyi çalıştığı görülmüştür. –
Uygulamada, yalnızca veri satırlarını görüntüleyen Standart ızgara görünümü var. Bu veriler farklı ViewModel'lerden olabilir, bu yüzden tek tek tutulması bizim için anlamlı değildir. İçerdiği veriler haricinde, hepsi aynı olduklarında birden çok Grid Görünümüne sahip olmanın hiçbir anlamı yoktur. –