我正在WP7中进行本地化应用程序,所以我用代码制作了我的应用程序栏。当我有一些表单(注册、登录等)时,问题就出现了。在Blend中,一切看起来都很好,但当我在设备上用文本框模拟它时,文本块完全不同(有时它们在彼此上)
我的解决方案是在Blend中构建空的应用程序栏(PhoneApplicationPage->New(Common Properties)),然后在代码中创建新的应用程序:
private void BuildApplicationBar()
{
// Set the page's ApplicationBar to a new instance of ApplicationBar.
ApplicationBar = new ApplicationBar();
// Create a new button and set the text value to the localized string from AppResources.
ApplicationBarIconButton OkAppBarButton = new ApplicationBarIconButton(new Uri("icons/ok.png", UriKind.Relative));
OkAppBarButton.Text = AppResource.OkAppBarButton;
ApplicationBar.Buttons.Add(OkAppBarButton);
OkAppBarButton.Click += new EventHandler(OkAppBarButton_Click);
ApplicationBarIconButton CancelAppBarButton = new ApplicationBarIconButton(new Uri("icons/cancel.png", UriKind.Relative));
CancelAppBarButton.Text = AppResource.CancelAppBarButton;
ApplicationBar.Buttons.Add(CancelAppBarButton);
CancelAppBarButton.Click += new EventHandler(CancelAppBarButton_Click);
}
效果很好,但我只是想确定这是正确的处理方式吗?
@dargod。有许多框架可以帮助构建和绑定appbar。许多人抱怨的应用程序栏的关键问题是,该栏不支持开箱即用的命令,因此不适合MVVM。
以下是一些可能有助于的链接
AppBarUtils
可绑定应用程序栏