Kezdőoldal » Számítástechnika » Programozás » C#. Hogy lehet gombnyomásra...

C#. Hogy lehet gombnyomásra ellenőrizni? Hogy csak akkor írja ki, hogyha hiba van?

Figyelt kérdés

Van egy ilyenem például:


private string username;

[Required(ErrorMessage = "Nem lehet üres!")]

[StringLength(5, MinimumLength = 5, ErrorMessage = "Legalább 5 karakter!")]

public string Username

{

get

{

return username;

}

set

{

ValidateProperty(value, "Username");

username = value;

OnPropertyChanged(nameof(Username));

}

}


private void ValidateProperty<T>(T value, string name)

{


Validator.ValidateProperty(value, new ValidationContext(this, null, null)

{

MemberName = name


});

}


Hogyha a Textboxba írok akkor szépen pirossal kijelzi a hibát például, ha üres vagy, ha nem elég hosszú. De, hogy lehetne azt megcsinálni, hogyha rákattintok a gombra akkor jöjjenek elő a validációk?


2020. okt. 13. 18:05
1 2
 1/11 anonim ***** válasza:
35%
A gomb onClick esemény kezelőjében meghívod/odaírod.
2020. okt. 13. 18:10
Hasznos számodra ez a válasz?
 2/11 A kérdező kommentje:
MVVM. Nem hívunk meg így Gombra eseményt, mert az ellentmond az MVVM-nek.
2020. okt. 13. 18:41
 3/11 A kérdező kommentje:

Az is jó, hogyha letudnám tiltani a gombot és csak akkor lehet rányomni, hogyha nincs expection. De ez sem jött még össze. Már lassan 2 napja ezzel vacakolok. Önmagába a gombot egyszerűen letiltom vagy engedélyezem:



private bool regButtonEnabled;

public bool RegButtonEnabled

{

get

{

return regButtonEnabled;

}

set

{

if(regButtonEnabled != value)

{

regButtonEnabled = value;

OnPropertyChanged(nameof(RegButtonEnabled));

}

}

}


De nem tudom, hogy a Data Annotation-ba, hogy építsem be, a Microsoft sem ír erről semmit. ASP.NET-be egy paranccsal meglehet ezt csinálni, amit a gombra helyezel, de XAML-ben ilyen nincs sajnos.

2020. okt. 13. 20:06
 4/11 A kérdező kommentje:
Pedig az itt olvasottakból azt hinné az ember, hogy akadnak itt programozók, akik nem csak konzolra tudnak fejleszteni. Ha már a többség milliókat keres, ahogy itt néhányan előadták. Vagy csak senki se fejleszt C#-ban. :). Azt hiszem át megyek akkor msdn-re ott biztos jön válasz.
2020. okt. 18. 20:53
 5/11 anonim ***** válasza:

Menj nyugodtan. Én elmondtam, mi lenne a teendő, de végig sem hallgattál. Innentől minek neked segíteni?

Ha meg tudsz annyit angolul, hogy msdn-re menj, miért nem ott kezdted?

2020. okt. 18. 21:14
Hasznos számodra ez a válasz?
 6/11 anonim ***** válasza:

Amúgy meg

[link]

Nesze, 5 teljes másodpercbe került beírni a googleba.

2020. okt. 18. 21:19
Hasznos számodra ez a válasz?
 7/11 A kérdező kommentje:

6: Sajnos ez nem jó.


5: Elmondtad, elolvastam, válaszoltam. OnClick eseményt nem hívunk meg MVVM-ben.

2020. okt. 18. 21:43
 8/11 anonim ***** válasza:

1, 5 és 6 ugyanúgy én vagyok.

Szóval első kérdés: miért nem jó az neked?

Második kérdés: honnan veszed, hogy mvvm-ben nincs onclick?

Az mvvm nem nyelvi elemek kérdése, hanem hogy hogy írod meg. Arra való a viewmodel, hogy a view-et összekösse a modellel, azaz kezelje az eseményeket is. Ha normálisan tervezed meg, akkor lehet onclick.

2020. okt. 18. 21:57
Hasznos számodra ez a válasz?
 9/11 A kérdező kommentje:
Nem lehet OnClick. :) Az OnClick esemény a View mögött hajtódik végre. Bindeléssel működik az "OnClick", de azt nem OnClick eseménynek hívjuk. Ez be van állítva már, láthatod is.....
2020. okt. 18. 23:53
 10/11 anonim ***** válasza:

Nem sok mindent látok, többek között azt sem, hogy mi van azzal a nézettel.

És mi az hogy a View mögött? Hol a view mögött? 3 réteg van, mutass rá nekem a 3 opció közül, mi számít "mögött"-nek.

2020. okt. 19. 17:31
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!