我有一个列表框XAML,看起来像这样

<Grid x:Name="LayoutRoot" Background="{StaticResource PhoneChromeBrush}">
    <ListBox HorizontalAlignment="Left" Margin="12,12,0,0" Name="ComplaintslistBox" VerticalAlignment="Top">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <Button Width="400" BorderThickness="1">
                    <Button.Content>
                        <StackPanel Orientation="Horizontal">
                            <StackPanel>
                                <Image Source="{Binding Type}" Width="30" Height="30"></Image>
                            </StackPanel>
                            <StackPanel>
                                <TextBlock Text="{Binding Head}" Width="300"></TextBlock>
                            </StackPanel>
                        </StackPanel>
                    </Button.Content>
                </Button>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>
</Grid>

现在的问题是它绑定“ Head”但不绑定“ Type”

类型变量包含要显示的图像的路径。

类看起来像这样

public class Complaints
{
    public string Id { get; set; }
    public string Type { get; set; }
    public string Head { get; set; }
    //public string Desc { get; set; }
    public string lat { get; set; }
    public string lon { get; set; }
    public string wardNo { get; set; }
    public string wardName { get; set; }
    public string creator { get; set; }
    public string url { get; set; }
    public string catId { get; set; }
    public string subCatId { get; set; }
    public int commentCount { get; set; }
    public int solutionCount { get; set; }
    public int affectedCount { get; set; }

    public Complaints() { }

    public Complaints(Complaints complaints)
    {
        this.Id = complaints.Id;
        this.Head = complaints.Head;
        //this.Desc = complaints.Desc;

        switch (complaints.Type)
        {
            case "Reported":
                this.Type = "icons/icon_red.png";
                break;
            case "Reopened":
                this.Type = "icons/icon_black.png";
                break;
            case "Resolved":
                this.Type = "icons/icon_green.png";
                break;
            default:
                this.Type = "icons/icon_blue.png";
                break;
        }

        this.wardNo = complaints.wardNo;
        this.wardName = complaints.wardName;

        this.lat = complaints.lat;
        this.lon = complaints.lon;

        this.catId = complaints.catId;
        this.subCatId = complaints.subCatId;

        this.url = complaints.url;
        this.creator = complaints.creator;

        this.affectedCount = complaints.affectedCount;
        this.commentCount = complaints.commentCount;
        this.solutionCount = complaints.solutionCount;
    }
}

谢谢

===============>>#1 票数:1

绑定到ImageSource可能比绑定到string更容易。

您将需要以下内容:

var ISC = new System.Windows.Media.ImageSourceConverter();

this.Type = (ImageSource)ISC.ConvertFromString(ImagePath);

类型是:

public ImageSource Type { get; set; }

而不是string

===============>>#2 票数:0

问题是这些图像位于何处,如果这些是程序集中的资源,则需要使用Pack URI语法来限定路径,实际上,完全限定路径绝不会有害。 因此,如果您使用资源,它应该类似于:

"pack://application:,,,/icons/icon_red.png"

  ask by 1Mayur translate from so

未解决问题?本站智能推荐:

5回复

Text = {Binding}上没有显示数据?

我对Silverlight和Windows 7手机的开发还很陌生。 而且我不确定我错过了什么,但我很遗憾我错过了一些东西,因为它没有按预期工作。 我的目标是显示一个生物列表,只显示其名称和生命值。 但整个Text = {Binding} -stuff显然不起作用。 所以我想知道你们中
1回复

在Windows Phone 8中绑定图像

我可以将图像绑定到xaml而不需要使用它的图像源(主要方法)(在xaml页面中): 因为我已经从字节数组转换了图像并且没有任何名称或来源。 像这儿:
2回复

带有绑定的Richtextbox图像不起作用

转到已编辑 由于RichTextbox的Xaml属性不是依赖项属性,因此我创建了一个自定义的RichTextbox,可以在其中与其xaml属性进行交互: 并且我将以下文本绑定到xaml属性,并且工作正常: 我通过转换器绑定它,在其中搜索笑脸字符(例如:);):D等等...)
1回复

由ObservableCollection填充时如何更改视图中图像的大小

我有一个由ObservableCollection填充的图像列表。 这是通过将列表框的ItemsSource绑定到后面代码中的Collection来完成的。 一切工作正常,尽管生成的图像列表看起来并不漂亮。 当前,图像被包装在水平WrapPanel中,这是我想保留的功能。 但是,问题在于
1回复

是否有任何一种方法可以在WP7上显示所有类型的图像

我正在WP7.5应用程序上工作,我必须下载多个图像并将它们显示在列表中。 图像可以是png,jpeg或gif。 对于前两个扩展来说,这不是问题,但众所周知,要在WP7上显示/播放gif图像,还有一些其他库或控件。 (我尝试使用ImageTools http://imagetools.cod
4回复

在Windows Phone 7的C#中将字节[]转换为图像类型

我在将Byte数组转换为Image类型以便在Windows Phone 7上的应用程序中显示时遇到问题。 从服务器检索数据,当我上传和下载数据时,它工作正常,但在将其转换回图像格式时我很挣扎。 任何人都可以为我解释这个问题吗? 这是我将Byte数组转换为BitmapImage的
1回复

在未应用平滑算法的情况下使用WP7 Silverlight缩放图像

我有一些要在Windows Phone 7应用程序中显示的图像(32x32 .png)。 现在,我能够缩放它们,等等...我想知道是否有一种方法在不应用任何平滑算法的情况下进行缩放(因此,当我将图像尺寸加倍时,它会产生块状图像外观)。 现在在我的XAML中,我有以下内容: 其中i
2回复

在运行时更改列表框中显示的图像

我有一个绑定到Observable Collecton的列表框,该列表框根据其中的数据显示不同的图像,如下所示: 我稍后再使用: 但是,这意味着我已经将ImagePath属性创建为Person的一部分,但这并不正确,因为它是ViewModel而不是模型的一部分。 是否可以通过某
1回复

通过Silverlight MVVM模式在两个不同的列表框中显示单个对象列表

我正在为Windows Phone创建一个应用程序。 我在主页使用全景视图。 全景视图包含两个全景项目,每个项目都包含一个与数据源绑定的列表框(即,使用ObservableCollection进行内存中的收集)。 该对象具有2个布尔属性IsA和IsB 。 我想在两个列表中显示对象的字
1回复

从Web请求返回值后,WP7中未填充ListBox

我正在尝试从头开始为WP7构建一个简单的应用程序。 MainPage.xaml中的列表框如下所示: 为了填充结果及其元素,名称和描述,我需要从Web服务器获取值,该Web服务器使用json响应我发送的get请求。 由于我需要对服务器进行不同的调用以响应不同的json对象,因此我为每个