我正在使用c#和xaml開發silverlight應用程序。我必須像顯示的信息:如何使用列表顯示列中某個人的信息?
SerialNumber FirstName LastName
s0 ss1 ss1L
s1 ss2 ss2L
其中s0 ss1 ss1L
和s 1 ss2 ss2L
必須List
。
和XAML代碼,所以是有點像這樣:
<UserControl x:Class="DEV_CENTER.ProgramGrid"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:data="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data"
xmlns:dataprimitives="clr-namespace:System.Windows.Controls.Primitives;assembly=System.Windows.Controls.Data"
xmlns:vm="clr-namespace:ViewModel;assembly=ViewModel"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400">
<UserControl.Resources>
<vm:ProgramViewModel x:Key="ProgramViewModel"/>
</UserControl.Resources>
<data:DataGrid Grid.Row="0" x:Name="gridPrograms" AutoGenerateColumns="False" ItemsSource="{Binding Path=Ssss1 }" IsReadOnly="True" DataContext="{StaticResource ProgramViewModel}" >
<data:DataGrid.Columns>
<data:DataGridTextColumn Header="SerialNumber" Binding="{Binding Path=sss1}" Width="2*"></data:DataGridTextColumn>
<data:DataGridTextColumn Header="FirstName" Binding="{Binding Path=sss2}" Width="2*"></data:DataGridTextColumn>
<data:DataGridTextColumn Header="LastName" Binding="{Binding Path=sss3}" Width="3*"></data:DataGridTextColumn>
</data:DataGrid.Columns>
</data:DataGrid>
</UserControl>
現在我應該如何對應於實現什麼我都問在視圖模型和模型的C#代碼?
Iam肯定有東西要這樣:請糾正我,如果我錯了?
public List<Program> getAllPrograms()
{
List<Program> programs = new List<Program>();
Program p1 = new Program();
p1.SerialNumber= "ss0";
p1.FirstName = "ss1";
p1.LastName= "ss1L";
Program p2 = new Program();
p2.SerialNumber= "Program 2";
p2.FirstName = "ss1";
p2.LastName= "ss2L";
programs.Add(p1);
programs.Add(p2);
programs.Add(p3);
return programs;
}
請幫我用mvvm實現我的目標。
你能澄清你的問題?你想得到什麼具體結果? –
@KenHung請在頂部看到:「SerialNumber FirstName LastName」(必須在xaml中)和「s0 ss1 ss1L」「s1 ss2 ss2L」必須使用c#使用Mvvm的概念完成。我的意思是我的Xaml代碼不能改變(它顯示標題),但是你可以寫C#代碼來達到目的。 – Sss