我正在开发一个具有以下格式的行的应用。为了清晰起见,我对行进行了编号。行交替背景,因此偶数行都是一种颜色而奇数行是另一种颜色。我使用包含x行的网格工作,并在每行中创建另一个包含两行和两列的网格来组织数据。我是WP7开发人员的新手,对Silverlight有一点经验。似乎应该有一种更简单的方法,但我还没有找到合适的用户控件。感觉就像我正在努力做到这一点,但我还没有找到为这种布局设计的用户控件。
--------------------------------
1 label: data
more data
--------------------------------
2 label: data
more data
--------------------------------
3 label: data
more data
--------------------------------
答案 0 :(得分:0)
您可以使用ListBox而不是嵌套网格来执行此操作 例如,创建一个新的列表项目并执行以下操作:
在mainpage.xaml中,将第35行更改为以下内容:
<StackPanel x:Name="DataTemplateStackPanel" Orientation="Horizontal" Background="{Binding Converter={StaticResource myconverter}}">
将以下内容添加到app.xaml:
<Application.Resources>
<alternateRows:MyConverter x:Key="myconverter" />
</Application.Resources>
使用以下
添加一个名为MyConverter的新类public class MyConverter: IValueConverter
{
bool flag = false;
SolidColorBrush brush1 = new SolidColorBrush(Color.FromArgb(255, 255, 0, 0));
SolidColorBrush brush2 = new SolidColorBrush(Color.FromArgb(255, 0, 0, 255));
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
flag = !flag;
return flag ? brush1 : brush2;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
这应该作为一个工作示例服务器,您可以根据需要进行调整。