可以通過保存自定義鍵盤爲靜態,然後將其綁定到使用默認樣式的所有輸入字段做到這一點。您可以將該默認樣式放入應用程序範圍的資源字典中,該字典會自動應用於整個應用程序。下面是我剛剛測試了一個新的空表格項目來驗證示例代碼:
步驟1.保存自定義鍵盤爲靜態。
Keyboards.cs(靜態自定義鍵盤):
using Xamarin.Forms;
namespace KeyboardDemo
{
public static class Keyboards
{
public static Keyboard Unassisted { get; private set; }
static Keyboards()
{
Unassisted = Keyboard.Create (0);
}
}
}
第2步:爲您的項目創建一個App.xaml中。
關注這個頭進行的App.xaml添加到您的表格項目:http://jfarrell.net/2015/02/02/centralize-your-styles-with-xamarin-forms/
第3步:添加默認樣式的App.xaml
應用。XAML:
<?xml version="1.0" encoding="UTF-8"?>
<Application
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:demo="clr-namespace:KeyboardDemo"
x:Class="KeyboardDemo.App">
<Application.Resources>
<ResourceDictionary>
<Style x:Key="EntryStyle" TargetType="Entry">
<Setter Property="Keyboard" Value="{x:Static demo:Keyboards.Unassisted}" />
</Style>
<Style BasedOn="{StaticResource EntryStyle}" TargetType="Entry" />
</ResourceDictionary>
</Application.Resources>
</Application>
第4步:添加一個新的頁面到項目
一個ContentPage添加到應用程序,與普通的輸入控件來驗證的造型。
App.xaml.cs:
using Xamarin.Forms;
namespace KeyboardDemo
{
public partial class App : Application
{
public App()
{
InitializeComponent();
MainPage = new MyPage();
}
}
}
MyPage.xaml:
<?xml version="1.0" encoding="UTF-8"?>
<ContentPage
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="KeyboardDemo.MyPage">
<ContentPage.Padding>
<OnPlatform x:TypeArguments="Thickness" iOS="0,20,0,0" Android="0" WinPhone="0" />
</ContentPage.Padding>
<StackLayout>
<Entry />
</StackLayout>
</ContentPage>
的'Keyboard'屬性是可綁定的,所以它的確可以通過樣式來分配。 –
@KiethRome對,但是這迫使你選擇Xamarin提供的預選鍵盤。您不僅可以使用樣式禁用自動大寫。因此,您可以選擇文本或數字,或者除此之外還會更改其他鍵盤屬性,而不僅僅是自動大寫。 *編輯:看到你現在回答!我把它全部拿回來;) – hvaughan3