如何删除Windows Phone中文本框和键盘之间的间隙

时间:2012-04-06 05:49:50

标签: windows-phone-7

我正在创建一个聊天窗口,底部带有文本框并发送到底部。当我点击文本框键盘出现,但显示文本框和键盘之间的差距。如何消除Windows Phone中文本框和键盘之间的差距

1 个答案:

答案 0 :(得分:0)

好消息!我已经设法解决了这个问题。下面的代码会阻止页面向上移动,然后在文本框的底部添加一个边距,将其放在键盘上方。 417以下的值似乎对我有用,但您可以将其更改为您喜欢的任何内容。使用此方法还可以阻止其他内容像对话一样被推离屏幕,因为当键盘处于活动状态时,它将完全可滚动。

private void TextBox_GotFocus_1(object sender, RoutedEventArgs e)
    {
        var rootFrame = Application.Current.RootVisual as PhoneApplicationFrame;
        rootFrame.RenderTransform = new CompositeTransform() { TranslateY = +0 };
        TextInput2.Margin = new Thickness(12, 0, 12, 417);
    }

private void TextBox_LostFocus_1(object sender, RoutedEventArgs e)
    {
        var rootFrame = Application.Current.RootVisual as PhoneApplicationFrame;
        rootFrame.RenderTransform = new CompositeTransform() { TranslateY = +0 };
        TextInput2.Margin = new Thickness(12, 0, 12, 12);
    }