2016-05-12 18 views
0

Xamarin Studioを搭載したMacマシンでPCLを使用して、最初のxamarinフォームアプリケーションを作成しています。 アプリケーション用のグローバルスタイルを作成するために非常に多くの記事を読んでいますが、アプリケーション内のファイルはApp.xaml.csファイルで宣言されているスタイルにはアクセスできません。私は使用したコードのビットの下で言及します。あるいは誰かが他の選択肢を持っていれば、それを簡単にするかどうかは分かりません。前もって感謝します。Xamarinフォームアプリケーション用のグローバルスタイルの作成方法

App.xaml.cs-

<Application xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="DinePerfect.App"> 
    <Application.Resources> 
     <ResourceDictionary> 
      <Style x:Key="btnStyle" TargetType="Button"> 
       <Setter Property="HorizontalOptions" Value="Center" /> 
       <Setter Property="VerticalOptions" Value="CenterAndExpand" /> 
       <Setter Property="BorderColor" Value="Lime" /> 
       <Setter Property="BorderRadius" Value="5" /> 
       <Setter Property="BorderWidth" Value="5" /> 
       <Setter Property="WidthRequest" Value="200" /> 
       <Setter Property="TextColor" Value="Teal" /> 
      </Style> 
     </ResourceDictionary> 
    </Application.Resources> 
</Application> 

他の[ファイル] -

<Button Text="Login" Style="{StaticResource btnStyle} TextColor="Black" BackgroundColor="#9C661F" Clicked="btnLoginClicked" /> 

答えて

1

にあなたが実際にはBorderColorの仕事をするためにスタイルのaswellにBackgroundColorを設定する必要があるスタイルを呼び出します。

From the Button.BorderColor Documentation

このプロパティは、Button.BorderWidthがVisualElement.BackgroundColorがデフォルト以外の色に設定されていない限り、このプロパティは効果がありませんAndroidでは0に設定されている場合は効果がありません。

スタイル:XAMLで

<ResourceDictionary> 
    <Style x:Key="btnStyle" TargetType="Button"> 
    <Setter Property="HorizontalOptions" Value="Center" /> 
    <Setter Property="VerticalOptions" Value="CenterAndExpand" /> 
    <Setter Property="BackgroundColor" Value="Black" /> 
    <Setter Property="BorderColor" Value="Lime" /> 
    <Setter Property="BorderRadius" Value="5" /> 
    <Setter Property="BorderWidth" Value="5" /> 
    <Setter Property="WidthRequest" Value="200" /> 
    <Setter Property="TextColor" Value="Teal" /> 
    </Style> 
</ResourceDictionary> 

使用法:

<Button Text="Login" Style="{StaticResource btnStyle}" /> 

これは私のために動作します。

編集: Example Project

+0

こんにちは@マリアス - 私は知らないが、私は2日からそれを苦労していると私はエラーStaticResource btnStyleが見つかりません。すべての個々のファイルの中で上記のスタイルを宣言している場合は、私はそれを取得しています。あなたはどのような手順を教えてくれますか? – Dipak

+0

こんにちは、あなたの問題を再現したプロジェクトへのリンクを追加しました。あなたはスタイルを参照しているところで完全なxamlページを投稿できますか?なぜこれがあなたのために働いていないのか分かりません。 –

5

は、XAMLベースのあなたは、コンストラクタでInitializeComponent();コールを見逃しているにアプリクラスの変換中のように見えます。

2

私はあなたがInitializeComponent()を追加することを忘れてしまったと思います。あなたのApp.csで。あなたがInitializeComponent()を呼び出さなければならないxamlコードを持っているとき。コンストラクタで

関連する問題