Application WPF - CheckBox i TextBox funkcjonalność

0

Robię aplikacje WPF zgodnie z tutorialem na youtube, natomiast chciałbym udoskonalić lekko moją aplikację. W załączniku znajduje się zdjęcie (Textbox_Checkbox.png) tej aplikacji gdzie po zaznaczeniu danego checkboxa (kolor czerwony) content tego checkboxa tj. napis jest wyświetlany w textboxie Length (kolor niebieski). Chciałbym dodatkowo udoskonalić moją aplikację w funkcjonalność, która usuwa zawartość textu z Textboxa Length jeśli checkbox jest uncheck tzn. content checkboxa. Spróbowałem to zrobić natomiast nie za bardzo to wygląda dobrze, tzn. wywołałem zdarzenie dla kontrolek checkbox "CheckBox_Unchecked" (MainWindowXaml.png) następnie do tej metody w codzie przypisałem string.Empty (Code.png) natomiast nie jest to czego oczekuje gdyż po zaznaczeniu wszystkich kontrolek i odznaczeniu jednej z nich cała zawartość tekstu jest usuwana z textboxa.

Znalazłem jakiś wątek podobny tutaj ale wydaje mi się że to dotyczy bardziej winforms niż WPF: https://stackoverflow.com/questions/21372836/c-sharp-remove-items-when-uncheck-check-box

Mógłby ktoś zerknąć i pomóć?

2
//Zamiast
LengthTextBox.Text = string.Empty;
//Zrób
CheckBox cb = sender as CheckBox;
LengthTextBox.Text = LengthTextBox.Text.Replace(cb.Text, string.Empty);

Nie mam jak sprawdzić, ale ogólny zamysł powinieneś wyłapać. Podczas Uncheck czyścisz całego TextBoxa, a powinieneś usunąć stringa, który odpowiada textowi checkboxa.

2

O ile dobrze zrozumiałem, to odznaczając swojego CheckBoxa usuwasz cały tekst z TextBox, natomiast powinieneś usuwać tylko tekst "odpowiedający" danemu CheckBoxowi. Najłatwiej - wykorzystać Replace i zamieniać tekst powiązany z konkretnym CheckBox na pusty. Coś w stylu:

LengthTextBox.Text = LengthTextBox.Text.Replace((string)(((CheckBox)Sender).Content), string.Empty);
0

Dziękuje o to mi chodziło :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1