読者です 読者をやめる 読者になる 読者になる

Xamarin 日本語情報

Xamarin(ザマリン) の代理店だったエクセルソフト田淵のブログです。主に Xamarin に関するエントリーをアップしていきます。(なるべく正しい有益な情報を掲載していきたいと考えていますが、このブログのエントリーは所属組織の公式見解ではありませんのでご注意ください)

Xamarin.Forms の XAML でコードスニペットを活用するには

こんにちは。エクセルソフトの田淵です。

デモする時にコードスニペット用意しますよね。Xamarin.Forms の XAML は動かなくてなんでだろ?と思っていたら、XML として認識されていたことが分かりましたw

UWP XAML

f:id:ytabuchi:20160329110636p:plain:w450

Xamarin.Forms XAML

f:id:ytabuchi:20160329110558p:plain:w450

XML って書いてありますね。

という事で、コードスニペットを作ってみました。

例えば Custom Cell を使う ListView とか。

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippet Format="1.0.0" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <Header>
    <Title>Custom ListView</Title>
    <Author>Yoshito Tabuchi</Author>
    <Description>Xamarin.Forms の Custom ListView 用 XML スニペット</Description>
    <Shortcut>lv</Shortcut>
    <SnippetTypes>
      <SnippetType>SurroundsWith</SnippetType>
      <SnippetType>Expansion</SnippetType>
    </SnippetTypes>
  </Header>
  <Snippet>
    <Declarations>
      <Literal>
        <ID>UnevenRows</ID>
        <Default>True</Default>
      </Literal>
    </Declarations>
    <Code Language="XML"><![CDATA[<ListView ItemsSource="{Binding .}" HasUnevenRows="$UnevenRows$">
    <ListView.ItemTemplate>
        <DataTemplate>
           <ViewCell>$selected$$end$
           </ViewCell>
       </DataTemplate>
    </ListView.ItemTemplate>
  </ListView>]]></Code>
  </Snippet>
</CodeSnippet>

<Declarations> 内に変数的なやつを入れます。<ID> はコード内で $ID$ から参照できて、<Default> がデフォルト値になります。(見たまんまですがw)

f:id:ytabuchi:20160329110959g:plain:w450

こんな感じで、まだ補完が弱い Xamarin.Forms の XAML コーディングを効率化させましょう^^

Xamarin 気になった方は

是非 ダウンロード(直接) / ダウンロード(弊社経由) して触ってみてください。 学習用リソースJXUG リンクページ に参考資料を纏めてますので併せてどうぞ。

Xamarin の情報が欲しい方はこのブログも購読いただいたり、私のTwitterアカウントをフォローいただいたりすると嬉しいです。

以上です。