Смятах, че това е доста основно, но ми трябвада вземе елементи от elements.xaml и да го постави в Template.xaml като дете на основната мрежа "MainGrid". Това може да се направи с c # или XAML, няма значение.
Ето елементи.xaml:
<TextBox Text="" FontSize="25" Grid.Column="0" Grid.Row="1"/>
<TextBox Text="" FontSize="25" Grid.Column="1" Grid.Row="1"/>
<TextBox Text="" FontSize="25" Grid.Column="2" Grid.Row="1"/>
<TextBox Text="" FontSize="25" Grid.Column="3" Grid.Row="1"/>
Тук е Template.xaml:
<Grid x:Name="MainGrid" Margin="20" Background="{ThemeResource SystemControlAltMediumLowAcrylicElementMediumBrush}">
<Grid.RowDefinitions>
//Defs go here
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
//Defs go here
</Grid.ColumnDefinitions>
<TextBlock x:Name="Head00" TextWrapping="Wrap" Text="Scene" FontSize="50" Grid.Column="0" Grid.Row="0"/>
<TextBlock x:Name="Head10" Text="Characters" FontSize="50" Grid.Column="1" Grid.Row="0"/>
<TextBlock x:Name="Head20" Text="Page" FontSize="50" Grid.Column="2" Grid.Row="0"/>
<TextBlock x:Name="Head30" Text="Mic Assignment Number" FontSize="50" Grid.Column="3" Grid.Row="0"/>
</Grid>
Искам вградената XAML да мине под Textblocks. Можете ли да помогнете?
EDIT: elements.xaml е в папката applicationdate, в C: ПотребителиUSERNAMEAppDataLocalPackagesPACKAGENAMELocalState
Благодаря, Раджан
Отговори:
0 за отговор № 1Опитайте да използвате XamlReader
, той може да зареди съдържанието на XAML и да преобразува низа в съответния елемент XAML.
Ето един прост пример:
string defaultNamespace = "http://schemas.microsoft.com/winfx/2006/xaml/presentation";
string xaml = "<TextBlock xmlns="" + defaultNamespace + "">Hello, world!</TextBlock>";
// xaml content will be:
// <TextBlock xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">Hello, world!</TextBlock>
var textBlock = XamlReader.Load(xaml) as TextBlock;
this.rootGrid.Children.Add(textBlock);
Този пример ще доведе до текстов блок в потребителския интерфейс.
За повече информация за XamlReader
, можеш да посетиш Клас XamlReader.