Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# mvvm light silverlight-用于添加/编辑订单的子窗口_C#_Mvvm Light_Silverlight 5.0 - Fatal编程技术网

C# mvvm light silverlight-用于添加/编辑订单的子窗口

C# mvvm light silverlight-用于添加/编辑订单的子窗口,c#,mvvm-light,silverlight-5.0,C#,Mvvm Light,Silverlight 5.0,我正在为我的公司开发一个silverlight intranet应用程序,发现mvvm是一种令人兴奋的模式,我很想使用它,还观看了mvvm light toolkit的视频 我对某些事情感到相当困惑,这可能是因为我习惯于只使用winforms 我有一个包含订单列表和两个按钮的页面,“编辑”和“添加”,我不知道如何使用mvvm模式向用户显示子窗口 我有一个mainviewmodel和一个orderviewmodel,mainviewmodel有一个orderviewmodel的可观察集合 我可以很

我正在为我的公司开发一个silverlight intranet应用程序,发现mvvm是一种令人兴奋的模式,我很想使用它,还观看了mvvm light toolkit的视频

我对某些事情感到相当困惑,这可能是因为我习惯于只使用winforms

我有一个包含订单列表和两个按钮的页面,“编辑”和“添加”,我不知道如何使用mvvm模式向用户显示子窗口

我有一个mainviewmodel和一个orderviewmodel,mainviewmodel有一个orderviewmodel的可观察集合

我可以很好地填充订单列表,我唯一的问题是如何显示编辑窗口和添加窗口。。坚持模式

我不确定我是否想得太多了

我将非常感谢任何能引导我走向正确方向的帮助,如果需要更多信息,请告诉我

提前感谢,, 克劳斯


编辑:我已经10年没有编写过代码了,我最初的想法当然是在codebehind中创建一个新的childwindow,并重写其构造函数以获取orderviewmodel,但我更愿意以正确的方式进行操作。

您可以创建一个窗口并添加不同的子控件

<Window x:Class="RetailPOS.Dashboard"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"          
        xmlns:Child="clr-namespace:RetailPOS.View.Usercontrols.MainWindow"
        x:Name="DashBoardCntrl"
           xmlns:WpfKb="clr-namespace:WpfKb.Controls;assembly=WpfKb"
        Title="MainWindow" Height="768" Width="1024"  ResizeMode="NoResize" WindowStartupLocation="CenterScreen" >
<Grid>
        <Grid.RowDefinitions>
            <RowDefinition></RowDefinition>
         </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition></ColumnDefinition>
            <ColumnDefinition></ColumnDefinition>
        </Grid.ColumnDefinitions>
        <StackPanel Orientation="Vertical" Grid.Column="0">
            <Child:MergeUserInfoSearch x:Name="UserInfo" HorizontalAlignment="Left"  Margin="1,0,0,0" Width="513"></Child:MergeUserInfoSearch>
             <Child:MenuControl x:Name="MenuCtrl" HorizontalAlignment="Left"  Margin="1,0,0,0" Width="510"></Child:MenuControl>
            <GroupBox Height="159" Margin="8 0 0 0" HorizontalAlignment="Left"  VerticalAlignment="Top" Background="AliceBlue"  Header="Categories" Width="499">
                <Child:Categories  x:Name="cat" HorizontalAlignment="Left"  Margin="1,0,0,0" ></Child:Categories>
            </GroupBox>
            <GroupBox Height="360" Margin="5 0 0 0" HorizontalAlignment="Left"  Grid.Row="1" VerticalAlignment="Top" Background="AliceBlue" Header="Products">
                <Child:Products HorizontalAlignment="Left" x:Name="prod"  Margin="1,0,0,0"></Child:Products>
            </GroupBox>
        </StackPanel></Grid>

我发现,我不确定我是怎么错过的,一个样本/演练可能非常适合我的需要:一张表单上的主控信息,新窗口中的详细信息,可能正是我想要的。