यह सुनिश्चित नहीं है कि आप अपने कोड को देखे बिना कॉम्बोबॉक्स पर चयनित इटैम से डेटा क्यों नहीं जोड़ सकते हैं। नीचे आपको एक संग्रह दृश्य का उपयोग करके यह कैसे करना है जिसमें वर्तमान आइटम प्रबंधन बनाया गया है जिसमें comboboxes का समर्थन करता है। कलेक्शन व्यू में एक CurrentItem प्रॉपर्टी है जिसका उपयोग आप वर्तमान में चुनने के लिए कर सकते हैं।
XAML:
<Window x:Class="CBTest.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<StackPanel>
<ComboBox
ItemsSource="{Binding Path=Names}"
IsSynchronizedWithCurrentItem="True">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<TextBlock Text="{Binding Path=Names.CurrentItem}" />
</StackPanel>
</Window>
कोड के पीछे:
using System.Collections.Generic;
using System.Windows;
using System.Windows.Data;
namespace CBTest
{
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
DataContext = new VM();
}
}
public class VM
{
public VM()
{
_namesModel.Add("Bob");
_namesModel.Add("Joe");
_namesModel.Add("Sally");
_namesModel.Add("Lucy");
Names = new CollectionView(_namesModel);
// Set currently selected item to Sally.
Names.MoveCurrentTo("Sally");
}
public CollectionView Names { get; private set; }
private List<string> _namesModel = new List<string>();
}
}
स्रोत
2010-05-18 19:27:12
यह अजीब है। मैं कसम खाता हूँ सकता है मैं क्योंकि मैं कुछ ब्लॉगों पर इसके बारे में पढ़ा कि वास्तव में क्या आप से पहले सुझाव दिया था ... अब मैं फिर से कोशिश की और यह काम किया: पी इस बीच मैं के साथ इस अगर कोई रुचि एक्सडी है मदद की में // यूआई नियंत्रण में चयनित इंडेक्स के रूप में नया बनाया गया स्कूलक्लास सेट करें .. चयनितस्कूलक्लास इंडेक्स = (स्कूलक्लास.काउंट! = 0)? स्कूलक्लास। गणना - 1: 0; – msfanboy
बस यह समस्या थी। मेरे पास 2 अलग-अलग संग्रह थे, और बराबर ऑपरेटर भूल गए थे, इसलिए एक्सएएमएल से जुड़ी एक की तुलना में वर्तमान संग्रह को दूसरे संग्रह से चुना गया था। तो लागू करने के बराबर इस मुद्दे को ठीक किया गया है। लेकिन एक ही संग्रह से चयन करने से भी इस मुद्दे को ठीक किया गया –