我找到了解决这个问题的方法,但是我很难通过点击按钮来增加字体大小
private void ApplicationBarIconButton_Click_3(object sender, EventArgs e)
{
if (ScrollableTextBlock.FontSize < 21.5)
{
ScrollableTextBlock.FontSize += 1;
}
}
这不会增加文字大小我使用链接中提到的相同数据模板: - http://blogs.msdn.com/b/priozersk/archive/2010/09/08/creating-scrollable-textblock-for-wp7.aspx
答案 0 :(得分:0)
我不确定,你的问题是什么,但字体大小正在增加。这是一个小例子:
public void appBarIncreaseFont_Click(object sender, EventArgs e, PhoneApplicationPage page)
{
MainPage _page = page as MainPage;
if (_page != null)
{
// example 1
List<UIElement> buttons = _page.ContentPanel.Children.Where(x => x.GetType() == typeof(Button)).ToList();
foreach (var x in buttons)
{
Button button = x as Button;
if (button != null && button.FontSize < 21.5)
button.FontSize += 1;
}
// example 2
if (_page.textBlock1.FontSize < 21.5)
_page.textBlock1.FontSize += 1;
}
}
这些示例允许增加当前类型(按钮)的所有元素的字体大小,或者只增加具体元素字体大小(textblock1)。
请注意,此版本使用委托,即在您创建ApplicationBar时,您在那里转移PhoneApplication页面,然后在创建菜单项时,您这样做:
ApplicationBarMenuItem appBarIncreaseFont = new ApplicationBarMenuItem("menusettings");
appBarIncreaseFont.Click += delegate(object sender, EventArgs e)
{
appBarIncreaseFont_Click(sender, e, page);
};
如果您不知道当前页面,那么您正在使用ApplicationBar无法更改任何内容。这就是你应该在这里使用委托的原因。
答案 1 :(得分:0)
您需要增加实例化控件的字体大小。在这里,您似乎试图增加类类型本身属性的字体大小。你想要做的是在.xaml文件中创建一个ScrollableTextBlock控件,类似于:
<Grid>
<ScrollableTextBlock Name="scrollTxtBlk"
Text="Hello, World!" />
<Button Content="Click Me!"
Click="Button_Click" />
</Grid>
然后,在您的代码隐藏文件中,添加click事件处理程序:
private void Button_Click(object sender, RoutedEventArgs e)
{
scrollTxtBlk.FontSize += 1;
}
单击时,这会增加名为scrollTxtBlock的ScrollableTextBlock上的字体大小,您应该会看到使用新字体大小的视图更新。