文章目录
问题
MAUI按钮的IsEnabled采用双向绑定失效,把绑定的属性设为false了,按钮没禁用,排除了其它地方把该属性在设为true
问题代码
View
<Button Grid.Row="1" x:Name="next" Margin="7,0,0,30" Grid.Column="1" IsEnabled="{Binding NextIsEnabled}" FontSize="16" FontAttributes="Bold" CornerRadius="24" TextColor="#FFFFFFFF" Command="{Binding NextCommand}" Text="{Binding NextText}" Background="#FF6E73FF" BorderColor="#FF6E73FF" VerticalOptions="End" HeightRequest="48"></Button>
ViewModel
public void NextIsEnabledVerification(int index, SleepDiary sleepDiary)
{
//修改的时候
if (sleepDiary!=null|| index==3)
{
NextIsEnabled=true;
return;
}
else
{
NextIsEnabled = false;
}
switch (index)
{
case 1:
if (!MoodsOne.Any(f => f.IsSelected == true))
{
NextIsEnabled = false;
}
else {
NextIsEnabled = true;
}
break;
case 2:
if (!MoodsTwo.Any(f => f.IsSelected == true))
{
NextIsEnabled = false;
}
else
{
NextIsEnabled = true;
}
break;
case 3:
#if ANDROID
if (string.IsNullOrEmpty(WakeHour) || string.IsNullOrEmpty(BedHour) || string.IsNullOrEmpty(FallAsleepTimeConsumingText) || string.IsNullOrEmpty(GetOffTheBedTimeConsumingText))
{
NextIsEnabled = false;
}
else
{
NextIsEnabled = true;
}
#endif
#if IOS
if (GoBedTime==null || WakeUpTime==null || string.IsNullOrEmpty(FallAsleepTimeConsumingText) || string.IsNullOrEmpty(GetOffTheBedTimeConsumingText))
{
NextIsEnabled = false;
}
else {
NextIsEnabled = true;
}
#endif
break;
case 4:
if (NoWakeUpAtNightChooseResult == "2" && (Times == null || Times == 0))
{
NextIsEnabled = false;
}
else
{
NextIsEnabled = true;
}
break;
case 5:
if (!SleepQualityItems.Any(f => f.IsSelected == true))
{
NextIsEnabled = false;
}
else
{
NextIsEnabled = true;
}
break;
case 6: NextIsEnabled = true; break;
}
}
原因
xmal.cs里改变了该值
private void Picker_SelectedIndexChanged(object sender, EventArgs e)
{
//判断有无选完
if (FallAsleepTimeConsumingPicker.SelectedItem != null)
{
//选完后显示下一步按钮
//next.IsEnabled = true;
}
else
{
//未选完隐藏下一步按钮
next.IsEnabled = false;
}
}
解决
取消掉xmal.cs的修改,改用viewmodel里修改
处理Bug的具体步骤
- 重现BUG
- 确定发生BUG的过程时都做了哪些动作
- 桌面检查:把自己的脑子作为CPU,运行从开始操作到出现BUG的操作、处理的数据,分析出现问题的原因
- 调试:确定问题出现的原因
- 确定解决方案
- 修复BUG
- 回归测试:确定已BUG已修复并没引入新问题
没有粉丝,没有评论,甚至连读者都没有。因为自己写的烂,因为自己水平有限,所以自己的作品一经发出就石沉大海了,得不到任何的回信,就好像自己写的东西是给自己看的。自己的作品怎么看都好像不够完美,全身的毛病,所以读者不喜欢也很正常对吧!
其实最让我开心的是有些读者们夸我文笔不错,或许是有人第一次这样夸我的缘故吧!又或许是我写的东西没什么人认可,我感受到了一种前所未有的激动,对于未来的憧憬,对自己写下去的动力。
因为有你们,我的写作之路才不孤独,因为有你们,我才能坚持到现在,如果有一天我真的写出圈了,或许我们可以整个交流会之类的,到时候促膝长谈。
“书山有路勤为径,学海无涯苦作舟。”写作苦是苦了点,整得我差点就想放弃了,不过还好有你们。我也不急着成功,因为没有个几十年如一日的坚持,哪能轻易成功?
茫茫文海无人意,天下有君识吾心。文海很孤独,但是有诸君,便足以令我至千里。