我是开发新手,我正在尝试用C#代码创建LongListSelector但没有成功。 任何人都可以帮我创建这个。
我的XML代码是 -
<phone:LongListSelector ItemRealized="LLS_ItemRealized" Name="longList" ItemsSource="{Binding supportedList}" IsGroupingEnabled="False" LayoutMode="List" HideEmptyGroups="True" Margin="30,0,26,0" >
<phone:LongListSelector.ItemTemplate>
<DataTemplate>
<Grid Background="Transparent">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="210"/>
<ColumnDefinition Width="210"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="120"/>
</Grid.RowDefinitions>
<Image Height="118" Width="209" Tap="ThumbnailImageTap" Margin="0" Stretch="Fill" Source="{Binding ThumbnailUrl1}" Tag="{Binding ClipId1}" Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Left"/>
<Image Height="118" Width="209" Tap="ThumbnailImageTap" Margin="0" Stretch="Fill" Source="{Binding ThumbnailUrl2}" Tag="{Binding ClipId2}" Grid.Column="1" VerticalAlignment="Center" HorizontalAlignment="Right"/>
</Grid>
</DataTemplate>
</phone:LongListSelector.ItemTemplate>
</phone:LongListSelector>
任何使用C#创建此内容的建议都很棒或者与我的回答相关的任何链接。
谢谢:)
答案 0 :(得分:3)
您可以通过在后面的代码中明确应用样式来实现此目的。首先使用预定义的键定义LongListSelector。
<phone:LongListSelector x:Key="listSelector" ItemRealized="LLS_ItemRealized" Name="longList" ItemsSource="{Binding supportedList}" IsGroupingEnabled="False" LayoutMode="List" HideEmptyGroups="True" Margin="30,0,26,0" >
<phone:LongListSelector.ItemTemplate>
<DataTemplate>
<Grid Background="Transparent">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="210"/>
<ColumnDefinition Width="210"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="120"/>
</Grid.RowDefinitions>
<Image Height="118" Width="209" Tap="ThumbnailImageTap" Margin="0" Stretch="Fill" Source="{Binding ThumbnailUrl1}" Tag="{Binding ClipId1}" Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Left"/>
<Image Height="118" Width="209" Tap="ThumbnailImageTap" Margin="0" Stretch="Fill" Source="{Binding ThumbnailUrl2}" Tag="{Binding ClipId2}" Grid.Column="1" VerticalAlignment="Center" HorizontalAlignment="Right"/>
</Grid>
</DataTemplate>
</phone:LongListSelector.ItemTemplate>
</phone:LongListSelector>
然后在后面的代码中获取样式并应用于新创建的LongListSelector。
var listSelector=new LongListSelector();
listSelector.Style=Resources["listSelector"] as Style;
答案 1 :(得分:1)
你看过这个吗?
Windows Phone 8上“LongListSelector”的官方微软链接:
来自wp7和wp8上的“CodeProject”的模板项目:
我希望这个帮助
答案 2 :(得分:0)
自己绑定它。试试这个。
LongListSelector listSelector;
private void CreateLongListSelector()
{
listSelector = new LongListSelector()
{
HideEmptyGroups=false,
IsGroupingEnabled=false,
};
ContentPanel.Children.Add(listSelector);
listSelector.ItemTemplate = GetDataTemplate();
}
public DataTemplate GetDataTemplate()
{
string xaml = @"<DataTemplate xmlns=""http://schemas.microsoft.com/winfx/2006/xaml/presentation"">
<Grid Background=""Transparent"">
<Grid.ColumnDefinitions>
<ColumnDefinition Width=""210""/>
<ColumnDefinition Width=""210""/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height=""120""/>
</Grid.RowDefinitions>
<Image Height=""118"" Width=""209"" Tap=""ThumbnailImageTap"" Margin=""0"" Stretch=""Fill"" Source=""{Binding ThumbnailUrl1}"" Tag=""{Binding ClipId1}"" Grid.Column=""0"" VerticalAlignment=""Center"" HorizontalAlignment=""Left""/>
<Image Height=""118"" Width=""209"" Tap=""ThumbnailImageTap"" Margin=""0"" Stretch=""Fill"" Source=""{Binding ThumbnailUrl2}"" Tag=""{Binding ClipId2}"" Grid.Column=""1"" VerticalAlignment=""Center"" HorizontalAlignment=""Right""/>
</Grid>
</DataTemplate>";
DataTemplate res=null;
try
{
res = (DataTemplate)XamlReader.Load(xaml);
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
return res;
}