简体   繁体   English

wp8中的级联下拉列表

[英]cascading dropdown in wp8

I'm try to create cascading dropdown when i select first one it's working fine.On SelectionChanged i'm try to bind second drop down on code behind it's show the result fine.But Dropdown show empty.here is my code.. 当我选择第一个下拉菜单时,我尝试创建级联下拉列表,它工作正常。在SelectionChanged上,我尝试将第二个下拉列表绑定到其后面的代码上,以显示结果很好。但是下拉列表显示为空。这是我的代码..

 Location ld = new Location();
            ld = categoryList.SelectedItem as Location;
            string id = "0";
            try
            {
                id = Convert.ToString(ld.id);
            }
            catch (Exception ex)
            { }
            if (id != "0")
            {
              //  lstSublocation.Visibility = Visibility.Visible;
                var lst = _lstlocation.Where(z => z.id == id).Select(z => z.sub_location).ToList();
                lstSublocation.ItemsSource = lst;
            }

In lst show 2 items. 在第一个中显示2个项目。

<toolkit:ListPicker x:Name="lstSublocation" Foreground="Black"   
                         BorderThickness="2" SelectionMode="Single"  
                        VerticalAlignment="Bottom" Margin="12,0,10,460" BorderBrush="LightGray"  Height="68" >
                    <toolkit:ListPicker.ItemTemplate>
                        <DataTemplate>
                            <StackPanel Orientation="Horizontal">
                                <TextBlock Text="{Binding name}" Margin="12 0 0 0" Foreground="Black"/>
                            </StackPanel>
                        </DataTemplate>
                    </toolkit:ListPicker.ItemTemplate>
                    <toolkit:ListPicker.FullModeItemTemplate>
                        <DataTemplate>
                            <StackPanel Orientation="Horizontal" Margin="0 21 0 20">
                                <TextBlock Text="{Binding name}"
                                       Foreground="Black"
                                       />
                            </StackPanel>
                        </DataTemplate>
                    </toolkit:ListPicker.FullModeItemTemplate>
                </toolkit:ListPicker>

Here is front end code ..... :( 2 hours struggle with this code like wrestlemania fight... :) 这是前端代码..::( 2个小时像摔跤大战一样挣扎着这个代码... :)

Code should work (as posted), this is probably where the problem is 代码应该可以正常工作(已发布),这可能是问题所在

var lst = _lstlocation.Where(z => z.id == id).Select(z => z.sub_location).ToList();
lstSublocation.ItemsSource = lst;

Put a break point at lstSublocation.ItemsSource = lst; lstSublocation.ItemsSource = lst;处放置一个断点lstSublocation.ItemsSource = lst; and check what lst is 检查一下是什么lst

Make sure it's actually a List<your_model> and that your_model has a Property of name not just a public variable.. like this 确保它实际上是一个List<your_model> ,并且your_model具有name的属性,而不仅仅是公共变量。

public class sample_model
{
    public sample_model()
    {
        this.name = "default";
    }

    public string name { get; set; }   // this is bindable
    // public string name;             // this is NOT bindable
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM