C# 如何正确绑定列表框

C# 如何正确绑定列表框,c#,xaml,data-binding,listbox,windows-phone,C#,Xaml,Data Binding,Listbox,Windows Phone,我的Windows Phone应用程序,有一个从集合produtos填充的列表框。此集合从JSON接收值 在我的列表框中,我“绑定”了JSON中的所有值(quantidade、descricao、valor_preco_a、codigo),以及另一个值(unidade),它应该是produtos.quantidade*produtos.valor_preco_a 我的列表框: <controls:PivotItem Header="Consulta" Name="consu

我的Windows Phone应用程序,有一个从集合
produtos
填充的列表框。此集合从JSON接收值

在我的列表框中,我“绑定”了JSON中的所有值(quantidade、descricao、valor_preco_a、codigo),以及另一个值(unidade),它应该是
produtos.quantidade*produtos.valor_preco_a

我的列表框:

        <controls:PivotItem Header="Consulta" Name="consultaCartao">
            <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="Auto" />
                    <ColumnDefinition Width="Auto" />
                    <ColumnDefinition Width="Auto" />
                </Grid.ColumnDefinitions>
                <ListBox Name="List2" ItemsSource="{Binding produtosCartao}" HorizontalContentAlignment="Stretch" Grid.ColumnSpan="3" Margin="0,182,-66,0" Visibility="Collapsed">
                    <ListBox.ItemTemplate>
                        <DataTemplate>
                            <StackPanel Margin="0,0,0,17" Width="432" Height="Auto">
                                <StackPanel.Background>
                                    <SolidColorBrush Color="#FFE8FF00" Opacity="0.2"/>
                                </StackPanel.Background>
                                <TextBlock Grid.Column="0" Text="{Binding descricao}" TextWrapping="Wrap" Style="{StaticResource PhoneTextNormalStyle}"/>
                                <TextBlock Grid.Column="3" TextWrapping="Wrap" Style="{StaticResource PhoneTextSubtleStyle}" Margin="20,5,12,0">
                                    <Run Text="{Binding quantidade}" />
                                    <Run Text="{Binding unidade}" />
                                </TextBlock>
                                <TextBlock Grid.Column="3" Text="{Binding valor, ConverterCulture=pt-BR, StringFormat=C2}" TextWrapping="Wrap" Style="{StaticResource PhoneTextNormalStyle}" Margin="300,-30,12,0"/>
                            </StackPanel>
                        </DataTemplate>
                    </ListBox.ItemTemplate>
                </ListBox>

我正在尝试使用以下代码:

public ObservableCollection<produtos> produtosCartao { get; set; }

    public class produtos
    {

        public double quantidade { get; set; }
        public string descricao { get; set; }
        public double valor_preco_a { get; set; }
        public string codigo { get; set; }
        public string unidade { get; set; }
        public double valor { get; set; }
    }

void webClient_DownloadStringCompletedProdutos(object sender, DownloadStringCompletedEventArgs e)
    {
      produtos produto = new produtos();
      produto.valor = produto.valor_preco_a * produto.quantidade;
    }
public observateCollection produtosCartao{get;set;}
公共类产品
{
公共双量化{get;set;}
公共字符串描述符{get;set;}
公共双valor_preco_a{get;set;}
公共字符串codigo{get;set;}
公共字符串unidade{get;set;}
公共双值{get;set;}
}
void webClient_downloadstringcompletedproduto(对象发送方,DownloadStringCompletedEventArgs e)
{
produtos produto=新produtos();
produto.valor=produto.valor_preco_a*produto.quantidade;
}

要在XAML中使用数据绑定,必须在列表框中设置DataContext属性

DataContext属性是xaml引擎查找以查找绑定值的对象


您应该查看一下

数据正在正常绑定。但是
produtos.value
必须是其他两个值的连接。因此,在我的代码中,我必须执行
produto.valor=produto.valor\u preco\u a*produto.quantidade
。是的,我理解,但是连接不应该是绑定的问题。那你有什么问题?该值未显示?显示的值为0,00。但是我知道这些值不是0。好的,那么试着像我前面说的那样设置DataContext。我认为这就是问题所在。很好,问题在于数据上下文。它现在对我很管用。谢谢你,兄弟