Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Uživatelské rozhraní aplikace .NET pro více platforem (.NET MAUI) Entry umožňuje zadat a upravit jeden řádek textu. Kromě toho Entry se dá použít jako pole s heslem.
Entry definuje následující vlastnosti:
ClearButtonVisibility
, typuClearButtonVisibility
, určuje, zda je zobrazeno jasné tlačítko, což uživateli umožňuje vymazat text. Výchozí hodnota této vlastnosti zajišťuje, že se nezobrazuje jasné tlačítko.HorizontalTextAlignment
, typu TextAlignment, definuje vodorovné zarovnání textu.IsPassword
, typubool
, určuje, zda má položka vizuálně zakrýt zadaný text.ReturnCommand
, typu ICommand, definuje příkaz, který se má spustit při stisknutí návratové klávesy.ReturnCommandParameter
, typuobject
, určuje parametr proReturnCommand
.ReturnType
, typuReturnType
, určuje vzhled návratového tlačítka.VerticalTextAlignment
, typu TextAlignment, definuje svislé zarovnání textu.
Tyto vlastnosti jsou podporovány BindableProperty objekty, což znamená, že mohou být cíle datových vazeb a stylovány.
Kromě toho definuje Completed
událost, Entry která se vyvolá, když uživatel dokončí text v návratovém Entry klíči.
Entry je odvozena z InputView třídy, ze které dědí následující vlastnosti:
CharacterSpacing
, typudouble
, nastaví mezery mezi znaky v zadaném textu.CursorPosition
, typuint
, definuje pozici kurzoru v editoru.FontAttributes
, typuFontAttributes
, určuje styl textu.FontAutoScalingEnabled
, typubool
, definuje, zda text bude odrážet předvolby škálování nastavené v operačním systému. Výchozí hodnota této vlastnosti jetrue
.FontFamily
, typustring
, definuje rodinu písem.FontSize
, typudouble
, definuje velikost písma.IsReadOnly
, typubool
, definuje, zda má být uživatel znemožněno upravovat text. Výchozí hodnota této vlastnosti jefalse
.IsSpellCheckEnabled
, typubool
, určuje, zda je povolena kontrola pravopisu.IsTextPredictionEnabled
, typubool
, určuje, zda je povolena predikce textu a automatická oprava textu.Keyboard
, typuKeyboard
, určuje soft input klávesnice, která se zobrazí při zadávání textu.MaxLength
, typuint
definuje maximální délku vstupu.Placeholder
, typustring
, definuje text, který se zobrazí, když je ovládací prvek prázdný.PlaceholderColor
, typu Color, definuje barvu zástupného textu.SelectionLength
, typuint
, představuje délku vybraného textu v ovládacím prvku.Text
, typustring
, definuje text zadaný do ovládacího prvku.TextColor
, typu Color, definuje barvu zadaného textu.TextTransform
, typuTextTransform
, určuje velikost písmen zadaného textu.
Tyto vlastnosti jsou podporovány BindableProperty objekty, což znamená, že mohou být cíle datových vazeb a stylovány.
Kromě toho definuje událost, InputView která se vyvolá při změně textuEntry.TextChanged
Objekt TextChangedEventArgs
, který doprovází TextChanged
událost, má NewTextValue
a OldTextValue
vlastnosti, které určují nový a starý text v uvedeném pořadí.
Informace o zadávání písem v souboru Entrynaleznete v tématu Písma.
Vytvoření položky
Následující příklad ukazuje, jak vytvořit Entry:
<Entry x:Name="entry"
Placeholder="Enter text"
TextChanged="OnEntryTextChanged"
Completed="OnEntryCompleted" />
Ekvivalentní kód jazyka C# je:
Entry entry = new Entry { Placeholder = "Enter text" };
entry.TextChanged += OnEntryTextChanged;
entry.Completed += OnEntryCompleted;
Následující snímek obrazovky ukazuje výsledek Entry v Androidu:
Poznámka:
V iOSu může klávesnice pro soft input pokrýt textové vstupní pole, když je pole v dolní části obrazovky, což znesnadňuje zadávání textu. V aplikaci .NET MAUI pro iOS se ale stránky automaticky posunou, když klávesnice pro měkký vstup pokryje pole pro zadávání textu, aby toto pole bylo nad soft input klávesnice. Metodu KeyboardAutoManagerScroll.Disconnect
Microsoft.Maui.Platform
v oboru názvů lze volat, aby se zakázalo toto výchozí chování. Metodu KeyboardAutoManagerScroll.Connect
lze volat, aby se po zakázání znovu povolilo chování.
Zadaný text je přístupný čtením Text
vlastnosti a signálem TextChanged
Completed
událostí, že se text změnil nebo dokončil.
Událost TextChanged
se vyvolá, když se text ve Entry změnách změní, a TextChangedEventArgs
před a za změnou zadejte text prostřednictvím OldTextValue
a NewTextValue
vlastností:
void OnEntryTextChanged(object sender, TextChangedEventArgs e)
{
string oldText = e.OldTextValue;
string newText = e.NewTextValue;
string myText = entry.Text;
}
Událost Completed
se vyvolá, když uživatel ukončil vstup stisknutím klávesy Return na klávesnici nebo stisknutím klávesy Tab ve Windows. Obslužná rutina události je obecná obslužná rutina události:
void OnEntryCompleted(object sender, EventArgs e)
{
string text = ((Entry)sender).Text;
}
Jakmile se Completed
událost aktivuje, provede se všechny ICommand zadané ReturnCommand
vlastností se object
zadaným ReturnCommandParameter
vlastností do objektu ReturnCommand
.
Poznámka:
Třída VisualElement , která je v Entry hierarchii dědičnosti, má Focused
také a Unfocused
události.
Nastavení mezer mezi znaky
Mezery mezi znaky lze použít u Entry vlastnosti nastavením CharacterSpacing
vlastnosti na double
hodnotu:
<Entry ...
CharacterSpacing="10" />
Výsledkem je, že znaky v textu zobrazeném řádkem Entry jsou CharacterSpacing
oddělené jednotky nezávislé na zařízení.
Poznámka:
Hodnota CharacterSpacing
vlastnosti se použije na text zobrazený vlastnostmi Text
a Placeholder
vlastnostmi.
Omezení délky vstupu
Vlastnost MaxLength
lze použít k omezení vstupní délky, která je povolena pro Entryobjekt . Tato vlastnost by měla být nastavena na kladné celé číslo:
<Entry ...
MaxLength="10" />
MaxLength
Hodnota vlastnosti 0 označuje, že nebude povolen žádný vstup, a hodnota int.MaxValue
, která je výchozí hodnotou pro znak Entry, označuje, že neexistuje žádný efektivní limit počtu znaků, které mohou být zadány.
Nastavení umístění kurzoru a délky výběru textu
Vlastnost CursorPosition
lze použít k vrácení nebo nastavení pozice, ve které bude další znak vložen do řetězce uloženého ve Text
vlastnosti:
<Entry Text="Cursor position set"
CursorPosition="5" />
Výchozí hodnota CursorPosition
vlastnosti je 0, což označuje, že text bude vložen na začátek objektu Entry.
Kromě toho SelectionLength
lze vlastnost použít k vrácení nebo nastavení délky výběru textu v rámci Entry:
<Entry Text="Cursor position and selection length set"
CursorPosition="2"
SelectionLength="10" />
Výchozí hodnota SelectionLength
vlastnosti je 0, což označuje, že není vybrán žádný text.
Zobrazení nezaškrtáného tlačítka
Vlastnost ClearButtonVisibility
lze použít k řízení, zda Entry se zobrazí jasné tlačítko, které uživateli umožní vymazat text. Tato vlastnost by měla být nastavena na člen výčtu ClearButtonVisibility
:
Never
značí, že se nikdy nezobrazí jasné tlačítko. Toto je výchozí hodnota vlastnostiClearButtonVisibility
.WhileEditing
indikuje, že se v okně s fokusem Entrya textem zobrazí jasné tlačítko.
Následující příklad ukazuje nastavení vlastnosti:
<Entry Text=".NET MAUI"
ClearButtonVisibility="WhileEditing" />
Následující snímek obrazovky ukazuje na Androidu Entry s povoleným tlačítkem Vymazat:
Transformace textu
Velikost Entry písmen textu uloženého Text
ve vlastnosti může transformovat nastavením TextTransform
vlastnosti na hodnotu výčtu TextTransform
. Tento výčet má čtyři hodnoty:
None
označuje, že text nebude transformován.Default
označuje, že se použije výchozí chování platformy. Toto je výchozí hodnotaTextTransform
vlastnosti.Lowercase
označuje, že text bude transformován na malá písmena.Uppercase
označuje, že text bude transformován na velká písmena.
Následující příklad ukazuje transformaci textu na velká písmena:
<Entry Text="This text will be displayed in uppercase."
TextTransform="Uppercase" />
Skrytí zadávání textu
EntryIsPassword
poskytuje vlastnost, která vizuálně zakrývá zadaný text, když je nastavena natrue
:
<Entry IsPassword="true" />
Následující snímek obrazovky ukazuje, jehož Entry vstup je nejasný:
Přizpůsobení klávesnice
Klávesnice s měkkým vstupem, která se zobrazí, když uživatelé komunikují s objektem Entry , lze programově nastavit prostřednictvím Keyboard
vlastnosti na jednu z následujících vlastností z Keyboard
třídy:
Chat
– používá se pro textování a místa, kde jsou emoji užitečné.Default
– výchozí klávesnice.Email
– používá se při zadávání e-mailových adres.Numeric
– používá se při zadávání čísel.Plain
– používá se při zadávání textu bez zadáníKeyboardFlags
.Telephone
– používá se při zadávání telefonních čísel.Text
– používá se při zadávání textu.Url
– používá se pro zadávání cest k souborům a webovým adresám.
Následující příklad ukazuje nastavení Keyboard
vlastnosti:
<Entry Keyboard="Chat" />
Třída Keyboard
má také metodu Create
továrny, kterou lze použít k přizpůsobení klávesnice zadáním velkých písmen, kontroly pravopisu a chování návrhu. KeyboardFlags
Hodnoty výčtu se zadají jako argumenty metody s vráceným přizpůsobeným Keyboard
kódem. Výčet KeyboardFlags
obsahuje následující hodnoty:
None
– na klávesnici nejsou přidány žádné funkce.CapitalizeSentence
– označuje, že první písmeno prvního slova každé zadané věty bude automaticky velkými písmeny.Spellcheck
– označuje, že kontrola pravopisu se provede u zadaného textu.Suggestions
– označuje, že dokončování slov bude nabízeno na zadaném textu.CapitalizeWord
– označuje, že první písmeno každého slova bude automaticky velkými písmeny.CapitalizeCharacter
– označuje, že každý znak bude automaticky velkými písmeny.CapitalizeNone
– značí, že nedojde k automatickému psaní velkých písmen.All
– označuje, že kontrola pravopisu, dokončování slov a velká písmena věty budou na zadaném textu.
Následující příklad kódu XAML ukazuje, jak přizpůsobit výchozí nastavení Keyboard
pro dokončování slov a velká písmena každého zadaného znaku:
<Entry Placeholder="Enter text here">
<Entry.Keyboard>
<Keyboard x:FactoryMethod="Create">
<x:Arguments>
<KeyboardFlags>Suggestions,CapitalizeCharacter</KeyboardFlags>
</x:Arguments>
</Keyboard>
</Entry.Keyboard>
</Entry>
Ekvivalentní kód jazyka C# je:
Entry entry = new Entry { Placeholder = "Enter text here" };
entry.Keyboard = Keyboard.Create(KeyboardFlags.Suggestions | KeyboardFlags.CapitalizeCharacter);
Přizpůsobení návratového klíče
Vzhled návratové klávesy na klávesnici se zpětným vstupem, která se zobrazí, když Entry má fokus, lze přizpůsobit nastavením ReturnType
vlastnosti na hodnotu výčtu ReturnType
:
Default
– označuje, že není vyžadován žádný konkrétní návratový klíč a že se použije výchozí nastavení platformy.Done
– označuje návratový klíč Hotovo.Go
– označuje návratový klíč Go.Next
– označuje návratový klíč Next.Search
– označuje návratový klíč "Search".Send
– označuje návratový klíč "Send".
Následující příklad XAML ukazuje, jak nastavit návratový klíč:
<Entry ReturnType="Send" />
Poznámka:
Přesný vzhled návratového klíče závisí na platformě. Návratový klíč v iOSu je textové tlačítko. V Androidu a Windows je ale návratový klíč tlačítkem založeným na ikonách.
Při stisknutí klávesy Completed
Return se událost aktivuje a provede se všechny ICommand zadané ReturnCommand
vlastností. Kromě toho se všechny object
zadané ReturnCommandParameter
vlastností předají ICommand jako parametr. Další informace o příkazech naleznete v tématu Příkazy.
Skrytí a zobrazení klávesnice pro měkký vstup
Třída SoftInputExtensions
v Microsoft.Maui
oboru názvů poskytuje řadu rozšiřujících metod, které podporují interakci s klávesnicí pro měkký vstup na ovládacích prvcích podporujících textové zadání. Třída definuje následující metody:
IsSoftInputShowing
, která kontroluje, jestli se v zařízení aktuálně zobrazuje klávesnice s měkkým vstupem.HideSoftInputAsync
, který se pokusí skrýt klávesnici s měkkým vstupem, pokud se právě zobrazuje.ShowSoftInputAsync
, která se pokusí zobrazit klávesnici s měkkým vstupem, pokud je aktuálně skrytá.
Následující příklad ukazuje, jak skrýt klávesnici pro měkký vstup na pojmenovaném Entry entry
, pokud se aktuálně zobrazuje:
if (entry.IsSoftInputShowing())
await entry.HideSoftInputAsync(System.Threading.CancellationToken.None);
Povolení a zakázání kontroly pravopisu
Vlastnost IsSpellCheckEnabled
určuje, jestli je povolená kontrola pravopisu. Ve výchozím nastavení je vlastnost nastavena na true
. Když uživatel zadá text, označí se chybně napsané texty.
U některých scénářů zadávání textu, jako je zadání uživatelského jména, ale kontrola pravopisu poskytuje negativní prostředí a mělo by být zakázáno nastavením IsSpellCheckEnabled
vlastnosti na false
:
<Entry ... IsSpellCheckEnabled="false" />
Poznámka:
IsSpellCheckEnabled
Pokud je vlastnost nastavena na false
a vlastní klávesnice se nepoužívá, nativní kontrola pravopisu bude zakázána. Pokud Keyboard
je však nastavena sada, která zakáže kontrolu pravopisu, například Keyboard.Chat
, IsSpellCheckEnabled
vlastnost je ignorována. Vlastnost proto nelze použít k povolení kontroly pravopisu Keyboard
, která ji explicitně zakáže.
Povolení a zakázání predikce textu
Vlastnost IsTextPredictionEnabled
určuje, zda je povolena predikce textu a automatická oprava textu. Ve výchozím nastavení je vlastnost nastavena na true
. Když uživatel zadá text, zobrazí se predikce slov.
U některých scénářů zadávání textu, jako je například zadání uživatelského jména, předpovědi textu a automatické opravy textu, ale může být negativní a mělo by být zakázáno nastavením IsTextPredictionEnabled
vlastnosti na false
:
<Entry ... IsTextPredictionEnabled="false" />
Poznámka:
Pokud je vlastnost nastavená IsTextPredictionEnabled
na false
hodnotu a nepoužívá se vlastní klávesnice, je zakázána predikce textu a automatická oprava textu. Pokud Keyboard
je však nastavena sada, která zakáže predikci textu, IsTextPredictionEnabled
vlastnost bude ignorována. Vlastnost proto nelze použít k povolení predikce textu pro Keyboard
objekt, který ji explicitně zakáže.
Zabránění zadávání textu
Uživatelům lze zabránit v úpravě textu nastavením Entry IsReadOnly
vlastnosti na true
:
<Entry Text="User input won't be accepted."
IsReadOnly="true" />