質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.02%
XAML

XAML(Extensible Application Markup Language)はWPF、Silverlight、Windows PhoneそしてWindows Store appsでユーザーインターフェースを定義するために使われるXML言語です。

Q&A

受付中

「ItemTemplate」の複数の定義を設定したい

topehe485
topehe485

総合スコア1

XAML

XAML(Extensible Application Markup Language)はWPF、Silverlight、Windows PhoneそしてWindows Store appsでユーザーインターフェースを定義するために使われるXML言語です。

0回答

0グッド

0クリップ

281閲覧

投稿2022/07/16 17:10

実現したいこと、発生している問題、エラーメッセージ

今、xamlでListViewのItemTemplateにSwipeControlの定義とListViewItemの中身の定義を両方記述しようとしているのですが「プロパティ'VisualTree'が複数回設定されています。」というエラーが出ます。
両方を記述するにはどうすればいいでしょうか。

該当のソースコード

xaml

1<Page 2 x:Class="TestApplicationViews.ListView" 3 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 4 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 5 xmlns:local="using:Application.Views" 6 xmlns:local1="using:Application.Views" 7 xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 8 xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 9 mc:Ignorable="d" 10 Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 11 <Grid x:Name="ToDoListGrid"> 12 <RelativePanel> 13 <ListView x:Name="ToDoList" UseLayoutRounding="False" SelectionChanged="ToDoList_SelectionChanged"> 14 <ListView.Resources> 15 <SymbolIconSource x:Key="Move" Symbol="List"/> 16 <FontIconSource x:Key="DoToday" Glyph="&#xE789;"/> 17 <SymbolIconSource x:Key="Delete" Symbol="Delete"/> 18 <SwipeItems x:Key="left" Mode="Reveal"> 19 <SwipeItem Invoked="DoToday_Invoked" Background="Blue" IconSource="{StaticResource DoToday}"/> 20 <SwipeItem Invoked="Move_Invoked" Background="Yellow" IconSource="{StaticResource Move}"/> 21 </SwipeItems> 22 <SwipeItems x:Key="right" Mode="Execute"> 23 <SwipeItem Invoked="Delete_Invoked" Background="Red" IconSource="{StaticResource Delete}"/> 24 </SwipeItems> 25 </ListView.Resources> 26 <ListView.ItemTemplate> 27 <DataTemplate x:DataType="ListViewItem"> 28 //ここにエラー 29 <ListViewItem> 30 <Grid> 31 <Grid.ColumnDefinitions> 32 <ColumnDefinition/> 33 <ColumnDefinition Width="44"/> 34 </Grid.ColumnDefinitions> 35 <CheckBox Grid.Column="0" Margin="12,0,0,0"> 36 <TextBox/> 37 </CheckBox> 38 <Button> 39 <SymbolIcon Symbol="More"/> 40 </Button> 41 </Grid> 42 </ListViewItem> 43 <SwipeControl LeftItems="{StaticResource left}" RightItems="{StaticResource right}"/> 44 </DataTemplate> 45 </ListView.ItemTemplate> 46 </ListView> 47 </RelativePanel> 48 </Grid> 49</Page>

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

Zuishin

2022/07/16 22:18

複数設定できないって言っているのだから、複数設定しなきゃいいってことです。 Grid か何かで囲ってやってください。
topehe485

2022/07/17 02:53

ありがとうございます。うまくいきました。Gridで囲っていいんですね。
Zuishin

2022/07/18 12:01

うまくいったようなので、具体的な方法を第三者にわかる形で回答し、それをベストアンサーに選んでください。

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.02%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

XAML

XAML(Extensible Application Markup Language)はWPF、Silverlight、Windows PhoneそしてWindows Store appsでユーザーインターフェースを定義するために使われるXML言語です。