3

我有一个显示项目名称的列表选择器。选择一个项目时,我想获取该选定项目的项目 ID。我该怎么做?

<toolkit:ListPicker x:Name="lstItem" 
                                            FullModeHeader="Item"
                                            SelectionMode="Single" 
                                            ItemsSource="{Binding getItems}"  
                                            ExpansionMode="FullscreenOnly"  
                                            Margin="12,5,10,0" 
                                            Grid.Row="0" 
                                            Grid.Column="1"

                                            Background="White"
                                            FontSize="21"
                                            Header="" 
                                            Foreground="Black"
                                            BorderThickness="0" Grid.ColumnSpan="2" SelectionChanged="lstItem_SelectionChanged"
                                     >
                            <toolkit:ListPicker.ItemTemplate>
                                <DataTemplate>
                                    <TextBlock Text="{Binding Name}"  />                                        
                                </DataTemplate>                                    
                            </toolkit:ListPicker.ItemTemplate>
                            <toolkit:ListPicker.FullModeItemTemplate>
                                <DataTemplate>
                                    <StackPanel Orientation="Horizontal" Margin="16 15 0 15">
                                        <TextBlock Text="{Binding Name}"
                                   Margin="0 0 0 0"
                                   FontSize="25" 
                                   FontFamily="{StaticResource PhoneFontFamilyLight}"/>
                                    </StackPanel>
                                </DataTemplate>
                            </toolkit:ListPicker.FullModeItemTemplate>
                        </toolkit:ListPicker>

在 C# 代码中,我将两者都绑定到 listpicker。此数据直接绑定到列表选择器。

public ObservableCollection<Items> bindItems()
    {
        listItems.Clear();
        //int i = Common.intCustomerId; //&& btypes.ChqRtnPaymentNo == ""
        var itemlist = from DailyItemStock DailyItm in APPCommon.SFADB
                       join ItemMaster IM in APPCommon.SFADB on DailyItm.ItemMasterID equals IM.ID
                       where DailyItm.StockDate == System.DateTime.Today
                       select new
                       {
                           DailyItm.ItemMasterID,
                           DailyItm.BatchNo,
                           IM.Name
                       };

        listItems.Add(new Items() { ItemMasterID = 0, Name = "Select One" });
        foreach (var lists in itemlist)
        {
            listItems.Add(new Items()
            {
                ItemMasterID = lists.ItemMasterID,
                BatchNo = lists.BatchNo,
                Name = lists.Name,                  
            });
        }

        itemlist = null;
        return listItems;
    }
4

2 回答 2

3

一种可能的方式:

Items selectedItem = (Items)lstItem.SelectedItem;
int id = selectedItem.ItemMasterID;
于 2015-04-17T06:16:34.860 回答
0

为了得到你必须在数据库中创建它的身份证号码。

例子

SHOP_ID ='4987bc1b-c0a8-6cb7-12f4-0243011f7099'和 (debitor_typenulldebitor_type在 (CASE WHEN ( select techfund_debitor_enabled from impl_shop where shop_id='4987bc1b-c0a8-6cb7-12f4-0243011f7099')

于 2015-04-17T04:46:15.310 回答