2011-04-22 5 views
2

WPF에서 ListBox를 사용하고 있는데 ListBox의 항목을 실제로 선택한 경우에만 단추를 사용하거나 사용하지 않도록 설정하려고합니다.WPF Listbox : HasItemSelected 이벤트가 어떻게 든 존재합니까?

문제는 내 단추가 항목의 이름을 검색하는 작업을 수행하고 초기화시 항목을 선택하지 않았기 때문에 (그리고 그 방식으로 유지하려고합니다.) 문제가 있습니다. ... null 객체에 로직을 수행

은 정말 주위를 둘러 보았다 내가

+0

일부 소스 코드는 유용 할 것입니다. –

답변

1

value converter을 하나

=/

좋은 하루 되세요을 =) 찾아 버튼 IsEnabled에 결합하지 수 있어요 변환기를 사용하여 ListboxSelectedIndex

public class MyConverter : IValueConverter 
{ 
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
    int ndx = (int)value; 
    if (ndx < 0) return false; 
    return true; 
    } 

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
    return null; 
    } 
} 


<Window.Resources> 
    <my:MyConverter x:Name="MyConverter"/> 
</Window.Resources> 

<ListBox x:Name="MyListBox"></ListBox> 
<Button IsEnabled="{Binding Path=SelectedIndex, ElementName=MyListBox, Converter={StaticResource MyConverter}}"/> 
+0

예를 들어 주시겠습니까? 나는 값 변환기 =/ –

+0

@FatalBaboon에 익숙하지 않다, 나는 그것에있다 :) 또한, 코드에 스위치 기사에 대한 링크를 확인하십시오. –

+0

답변에 ComboBox가있는 이유는 무엇입니까? ListBox를 사용하고 있습니다. –