1

我正在尝试通过具有TextBlock绑定的 ListBox 中的 Web 服务显示信息。我一直在网上研究这个问题,似乎无法解决这个问题。我的数据库表确实保存了正确的数据。最后,我有一个页面,它提供了完全相同的功能/方法,并显示了正确的数据。我真的被这个问题困扰着,希望你们中的一个可以帮忙!

我无法上传我的 ListBox 的屏幕截图,但我会尽力在这里说明它!

采购订单(标题)

采购订单编号:1 (ListItem) 状态:已接受 (ListItem)

-----显示第一行后出现损坏的数据-----

采购订单号:0

采购订单号:0

- - 结尾 - -

请注意,我的第一行显示正确的数据,而其他数据都已损坏。但是,在实现搜索功能时,我能够正确查看数据库中的现有数据。(未损坏)。

采购订单.aspx:

<controls:PivotItem Header="Purchase Order" FontSize="18">
            <ScrollViewer VerticalScrollBarVisibility="Visible">
                <ListBox x:Name="ListBoxPurchaseOrder" Margin="20,42,38,0" d:LayoutOverrides="VerticalAlignment">
                    <ListBox.ItemTemplate>
                        <DataTemplate>
                            <StackPanel Orientation="Vertical">
                                <TextBlock Text="{Binding purchaseOrderID, StringFormat='Purchase Order No: \{0\}'}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}" FontSize="38" />
                                <TextBlock Text="{Binding status, StringFormat='Status: \{0\}'}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
                            </StackPanel>
                        </DataTemplate>
                    </ListBox.ItemTemplate>
                </ListBox>
            </ScrollViewer>
        </controls:PivotItem>

PurchaseOrder.aspx.cs:

public PO()
{
    load();
    InitializeComponent();
}

bool success = false;

Session.PurchaseOrder session = new Session.PurchaseOrder();

private void load()
{
    InitializeComponent();
    IfsRetailerClient myClient = new IfsRetailerClient();
    myClient.getPurchaseOrder1Completed += new EventHandler<getPurchaseOrder1CompletedEventArgs>(myClient_getPurchaseOrder1Completed);
    myClient.getPurchaseOrder1Async();
}

void myClient_getPurchaseOrder1Completed(object sender, getPurchaseOrder1CompletedEventArgs e)
{
    ListBoxPurchaseOrder.ItemsSource = e.Result;
}

Web 服务文件,IfsRetailer.cs:

[OperationContract]
List<Payment> getPayment();

fsRetailer.cs:

DatabaseEntities db = new DatabaseEntities();
public List<Payment> getPayment()
{
    return db.Payments.ToList();
}
4

0 回答 0