由于我是Windows Phone应用程序的新手,因此面对此问题,如果有人提出他们宝贵的答案,这将非常有帮助。我TextBlock
里面有2个网格ListBox
。但是我需要以编程方式更改第二个文本块的边距,因为如果应用程序在更大的屏幕上运行,则第二个文本块的对齐方式会不好。第一个文本块应该对齐到左边,第二个文本块应该对齐到右边,但是当我在textblock中设置时,它不能正常工作,因此我需要更改边距。
图片在这里:https : //dl.dropboxusercontent.com/u/40039421/Untitled-1.png
<Grid Grid.Row="2" Grid.Column="0">
<ListBox x:Name="lbToday" FontSize="13" Tapped="lbToday_Tapped"
HorizontalContentAlignment="Left" HorizontalAlignment="Left">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<TextBlock x:Name="tbTodaySubjectName" Foreground="#FF02416C"
Text="Aplikovana inforatika" HorizontalAlignment="Left"
Margin="0,0,75,0" />
<TextBlock x:Name="tbSubjectHourStart" Foreground="#FF02416C" Text="10:30"
HorizontalAlignment="Right" Padding="0,0,0,0" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
您可以通过使内部网格具有2列并在每个列中都有TextBox
自己的列来解决您的问题。这样,您将不需要在运行时进行任何更改,并且布局应该可以正常工作。
<ListBox>
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
</ListBox.ItemContainerStyle>
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TextBlock HorizontalAlignment="Left" />
<TextBlock HorizontalAlignment="Right" Grid.Column="1" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句