java textvaluechanged 全选删除不触发_Textbox.Text在不触发Textchanged事件的情况下更改自身(未绑定问题)...

我是一名初学者,我正在为Wndows Phone 7创建一个应用程序。

首先你必须知道的是,当我第一次加载页面时(从菜单到对话页面,菜单包含对话列表),我的代码工作得很好。然后,如果我使用硬键返回菜单页面,然后单击相同的对话再次加载相同的ConversationPage,则问题开始出现。

基本上,我有一个名为MessageBoxMessage的文本框,以及applicationBar中的SendButton。

我想要的是:当我单击SendButton时,它会查看MessageBoxMessage.Text并在PostToWeb函数中发送该值。

问题:当我重新加载页面时,在框中写入一些内容并单击SendButton,MessageBoxMessage.Text神奇地变为“”或“新消息”。

我在MessageBoxMessage_TextChanged事件和SendButton_Click事件的开始处引入了一个断点,并将值从“blablabla”(最后一次MessageBoxMessage_TextChanged被触发)转换为“”或“新消息”(当SendButton_Click触发时)。

我不明白为什么...而且我还有另一个级联问题,所以我猜这是个大问题...

(顺便说一句,我已经检查过,事件只定义一次)

对不起,我的英语,我希望你能帮助:)

非常感谢

private void MessageBoxMessage_GotFocus(object sender, RoutedEventArgs e)

{

MessageBoxMessageHasFocus = true;

if (MessageBoxMessage.Text == "new message")

{

MessageBoxMessage.Text = "";

if (hasPictureAttached == true)

{ SendButton.IsEnabled = true; }

else

{ SendButton.IsEnabled = false; }

}

else if (MessageBoxMessage.Text == "")

{

if (hasPictureAttached == true)

{ SendButton.IsEnabled = true; }

else

{ SendButton.IsEnabled = false; }

}

else

{

SendButton.IsEnabled = true;

}

}

private void MessageBoxMessage_LostFocus(object sender, RoutedEventArgs e)

{

MessageBoxMessageHasFocus = false;

if (MessageBoxMessage.Text == "")

{

MessageBoxMessage.Text = "new message";

if (hasPictureAttached == true)

{ SendButton.IsEnabled = true; }

else

{ SendButton.IsEnabled = false; }

}

else if (MessageBoxMessage.Text == "new message")

{

if (hasPictureAttached == true)

{ SendButton.IsEnabled = true; }

else

{ SendButton.IsEnabled = false; }

}

else

{

SendButton.IsEnabled = true;

}

}

int MessageBoxMessageTextChangedCounter = 0;

private void MessageBoxMessage_TextChanged(object sender, TextChangedEventArgs e)

{

if (MessageBoxMessageTextChangedCounter == 0)

{

if ((MessageBoxMessage.Text != "" && MessageBoxMessage.Text != "new message") || hasPictureAttached == true)

{

SendButton.IsEnabled = true;

}

else { SendButton.IsEnabled = false; }

MessageBoxMessageTextChangedCounter = 1;

return;

}

else

{

MessageBoxMessageTextChangedCounter = 0;

}

if (MessageBoxMessage.Text != "" && MessageBoxMessage.Text != "new message")

{

MessageString = MessageBoxMessage.Text;

}

}

private void SendButton_Click(object sender, EventArgs e)

{

if (MessageBoxMessage.Text == "new message" && hasPictureAttached == true)

{ MessageBoxMessage.Text = "";}

SendButton.IsEnabled = false;

if (hasPictureAttached == true)

{

//MessageString = MessageBoxMessage.Text;

GetPictureUrl();

hasPictureAttached = false;

}

else

{

//MessageString = MessageBoxMessage.Text;

POSTmessage();

}

if (MessageBoxMessageHasFocus == true)

{

MessageBoxMessage.Text = "";

MessageBoxMessage.SetValue(TextBox.TextProperty, "");

}

else

{

MessageBoxMessage.Text = "new message";

MessageBoxMessage.SetValue(TextBox.TextProperty, "new message");

}

}以下是XAML

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值