Почему, если я отключаю свой textBox в false, всегда равно true?
Я работаю над приложением "Оболочка" на платформе "Windows Phone 8". Я просто пытаюсь отключить все свои контроллеры пользовательского интерфейса при выполнении команды. Все кнопки контроллеров хорошо работают в режиме "отключить", но я не знаю, почему мой контроллер "TextBox" все еще активен. Это очень раздражает, потому что пользователь все еще может щелкнуть по полям ввода во время обработки операции:'(
Большое спасибо, ребята;-)
Это мой код, где я пытаюсь отключить и включить после завершения моей операции:
//.... Get the controller textBox in my class
ttbxInputShell = new RadTextBox() { Text = (ContentPanel.FindName("ttbx_shell") as RadTextBox).Text };
//....
// Disable Ui
#region DisableUI
public void DisableUi()
{
Deployment.Current.Dispatcher.BeginInvoke(() =>
{
ttbxInputShell.IsEnabled = false; //No Work
ttbxInputShell.IsHitTestVisible = false; //No Work
ttbxInputShell.IsReadOnly = true; //No Work
btnLastCommande.IsEnabled = false; //Work
btnHelpCommande.IsEnabled = false; //Work
btnExecuteCommande.IsEnabled = false; //Work
});
}
#endregion
// Enable Ui
#region EnableUI
public void EnableUi()
{
Deployment.Current.Dispatcher.BeginInvoke(() =>
{
ttbxInputShell.IsEnabled = true;
ttbxInputShell.IsHitTestVisible = true;
ttbxInputShell.IsReadOnly = false;
btnLastCommande.IsEnabled = true;
btnHelpCommande.IsEnabled = true;
btnExecuteCommande.IsEnabled = true;
});
}
#endregion
КОД XAML
<TextBox x:Name="ttbx_shell" KeyDown="ttbx_shell_KeyDown_1" GotFocus="ttbx_shell_GotFocus_1" LostFocus="ttbx_shell_LostFocus_1" TextChanged="ttbx_shell_TextChanged_1" HorizontalAlignment="Stretch" VerticalAlignment="Center" TextWrapping="Wrap" Height="100" Margin="-7,-8,0,0" FontSize="26" Padding="3,6,3,0" Grid.Row="2" FontFamily="dos_font.ttf#Perfect DOS VGA 437 Win" />
<Button x:Name="btnLastCommande" Content="F1" Grid.Row="2" Margin="231,0,55,0" Grid.ColumnSpan="3" Tap="btnLastCommande_Tap" />
<Button x:Name="btnHelpCommande" Content="?" Grid.Row="2" Grid.Column="1" Margin="55,0,95,0" Grid.ColumnSpan="3" Tap="btnHelpCommande_Tap"/>
<Button x:Name="btnExecuteCommande" Grid.Row="2" Grid.Column="2" Content="Enter" Padding="-3" Margin="55,0,-5,0" Grid.ColumnSpan="2" Tap="btnExecuteCommande_Tap"/>
</Grid>
И это изображение моего приложения, где вы можете найти вход по-прежнему enbale .. Но кнопки отключены:
1 ответ
Вы включаете / отключаете элемент управления, который не добавлен в ваш пользовательский интерфейс. Исходный элемент управления с именем "ttbx_shell", отображаемый в пользовательском интерфейсе, таким образом, не затрагивается.