In meiner XAML Ich habe eine Ressource als vehicleDataInput definiert, die zur Eingabe von Daten einige Textfelder für den Benutzer präsentiert. Wenn ich kein x: Schlüssel dafür definiere, wird es sich in meiner App präsentieren und so funktionieren wie es soll. Problem ist, ich möchte entscheiden, ob es aus meiner Sicht ist es mit Hilfe eines x platziert: Key, aber ich kann nicht die Bindung richtig zu bekommen.Gegenwart UserControl.Resources
Sie können weiter in meinem Code unten sehen, dass ich mit einer Inhaltskontrolle und die Bindung an „vehicleDataInput“ versucht, aber es funktioniert nicht zur Laufzeit. I`m aproaching dieses Problem in die falsche Richtung
habe ich versucht, eine Antwort auf dieses Problem zu finden, aber niemand scheint es zu haben, die mich denken lässt, was habe ich verpasst?
<UserControl x:Class="RegCarManager.Vehicles.CreateVehicle.CreateVehicleView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:vehicles="clr-namespace:RegCarManager.Vehicles"
xmlns:vehiclesViewModel="clr-namespace:RegCarManager.Vehicles.CreateVehicle"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<UserControl.Resources>
<DataTemplate x:Key="vehicleDataInput" DataType="{x:Type vehicles:VehicleModel}">
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Top" >
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<TextBlock Grid.Column="0" Grid.Row="1" Text="Model" VerticalAlignment="Center" Margin="5" />
<TextBox Grid.Column="1" Grid.Row="1" Text="{Binding Model}" Margin="5" Width="150" />
<TextBlock Grid.Column="0" Grid.Row="2" Text="Reg number" VerticalAlignment="Center" Margin="5" />
<TextBox Grid.Column="1" Grid.Row="2" Text="{Binding RegNumber}" Margin="5" Width="150" />
</Grid>
</DataTemplate>
</UserControl.Resources>
<DockPanel Margin="20">
<ComboBox DockPanel.Dock="Top"
ItemsSource="{Binding Clients}"
DisplayMemberPath="FullName"
SelectedValuePath="ClientId"
SelectedValue="{Binding OwnerId, Mode=TwoWay}" />
<ContentControl Content="{DynamicResource vehicleDataInput}" />
<DockPanel DockPanel.Dock="Bottom">
<Button Content="Save" DockPanel.Dock="Right" Margin="10,2" VerticalAlignment="Center"
Command="{Binding Path=SaveNewVehicleCommand}" IsDefault="True" Width="100" />
</DockPanel>
<ContentControl Margin="20,10" Content="{Binding Path=NewVehicle}" />
</DockPanel>
Hat Ihr Viewmodel eine Eigenschaft vom Typ 'VehicleModel'? Wo soll das 'VehicleModel' in Ihrem ContentControl angezeigt werden? –