내 MVVM 페이지를 XAML에 저장하는 PCL이 있습니다. XAML 파일에 다음과 같은 내용이 있지만 키보드의 자동 완성 기능을 사용하지 않으려합니다. 누구든지 XAML에서이 작업을 수행 할 수있는 방법을 알고 있습니까?Xamarin.Forms에서 자동 완성 사용 안 함 PCL XAML 페이지
<Entry Text="{Binding Code}" Placeholder="Code" />
내 MVVM 페이지를 XAML에 저장하는 PCL이 있습니다. XAML 파일에 다음과 같은 내용이 있지만 키보드의 자동 완성 기능을 사용하지 않으려합니다. 누구든지 XAML에서이 작업을 수행 할 수있는 방법을 알고 있습니까?Xamarin.Forms에서 자동 완성 사용 안 함 PCL XAML 페이지
<Entry Text="{Binding Code}" Placeholder="Code" />
양식은 내가이 동작을 제어하기위한 것입니다 가정합니다 KeyboardFlags.Suggestion 열거를 지원하지만 아주 잘 문서화로 표시되지 않습니다. 이미 답있을 동안 나는 내가 XAML에서 사용에 대한 조금 더 정교한 줄 알았는데,
MyEntry.Keyboard = Keyboard.Create(KeyboardFlags.CapitalizeSentence | KeyboardFlags.Spellcheck);
KeyboardFlags은 같은 그것을해야한다.
코드 숨김과 달리 사용할 키보드 클래스의 새 인스턴스를 만들 수는 없지만 방법이 있습니다. 다행히 이미 App.cs를 제거하고 (제거하고 App.xaml 및 App.xaml.cs를 작성), Resources 속성이 아직 초기화되지 않았는지 확인할 필요가 없기를 바랍니다.
다음 단계는 OnStart() 메서드를 재정의하고 사용하는 다양한 키보드에 적절한 항목을 추가하는 것입니다. 저는 보통 숫자, 전자 메일 및 텍스트의 세 가지 키보드를 사용합니다. 또 다른 유용한 키보드는 URL 키보드이지만, 같은 방법으로 추가 할 수 있습니다.
protected override void OnStart()
{
base.OnStart();
this.Resources.Add("KeyboardEmail", Keyboard.Email);
this.Resources.Add("KeyboardText", Keyboard.Text);
this.Resources.Add("KeyboardNumeric", Keyboard.Numeric);
}
이 작은 코드로 키보드를 정적 리소스로 사용할 수 있습니다. XAML에서 사용하려면 다음을 수행하십시오.
<Entry x:Name="emailEntry" Text="{Binding EMail}" Keyboard="{StaticResource KeyboardEmail}" />
그리고 이제는 항목에 전자 메일 키보드가 있습니다.
:
정적 멤버에 대한 리소스를 만들 필요가 없습니다. 'x : Static' 속성에 대한 자세한 내용은 내 대답을 참조하십시오. –
Keyboard
특성을 사용하여 XAML에서 인스턴스를 만들 수 있습니다. 당신은 다음과 같은 마크 업을 달성 할 수 원하는 것 :
<Entry Text="{Binding Code}" Placeholder="Code">
<Entry.Keyboard>
<Keyboard x:FactoryMethod="Create">
<x:Arguments>
<KeyboardFlags>None</KeyboardFlags>
</x:Arguments>
</Keyboard>
</Entry.Keyboard>
</Entry>
KeyboardFlags.None
는 현장의 모든 특수 키보드 기능을 제거합니다.
<Entry Placeholder="Phone" Keyboard="{x:Static Keyboard.Telephone}" />
: 사용자 정의
Keyboard
을 필요로하지 않는 경우
<KeyboardFlags>CapitalizeSentence,Spellcheck</KeyboardFlags>
, 당신은 x:Static
속성을 활용하여 one of the predefined ones를 사용할 수 있습니다
Multiple enums 쉼표로 구분하여 XAML에서 지정할 수 있습니다
이것이 스타일에 통합 될 수 있다면 멋질 것입니다. – wonea
그것은별로 도움이되지 않습니다. 그것은 .. 'None' 회원으로 보이지 않습니다 .. – benpage
@benpage 문서가 업데이트 된 것으로 보이지 않지만 지금'None' 회원이 있습니다. https://github.com/xamarin/Xamarin.Forms/blob/c1cf72080abbb06571e5a64ef8777c35f7014f0/Xamarin.Forms.Core/KeyboardFlags.cs#L8 –