我在加载我的应用程序后遇到问题,有时我与 SQL 的连接断开。这通常会导致错误,因为我有一个组合框的 itemsource 绑定到一个单独的静态类属性,该属性在该属性的 GET 内查询 SQL。我似乎无法处理 Get 中的异常。我应该怎么做,或者在我绑定的静态属性的Get中查询SQL不是要走的路?GetFrequencies 方法与静态属性在同一个静态类中,只是从 SQL 中查询一些东西,如果无法连接等则抛出异常。这是基本属性和绑定: 静态类中的属性(实例):
public ObservableCollection<Frequency> ActiveFrequencies
{
get
{
ObservableCollection<Frequency> Actives = new ObservableCollection<Frequency>();
try
{
foreach (Frequency item in GetFrequencies(null, null, true))
{
Actives.Add(item);
}
}
catch (Exception e)
{
}
return Actives;
}
}
XAML 中的绑定:
ItemsSource="{Binding ActiveFrequencies, Source={x:Static G:FrequencyData.Instance}}"
好的,所以我在我的视图模型中创建了一个属性:
public ObservableCollection<Frequency> ActiveFrequencies
{
get
{
ObservableCollection<Frequency> freqs = null;
try
{
freqs = FrequencyData.Instance.GetFrequencies(null, null, true);
}
catch(Exception ex)
{
}
return freqs;
}
}
但我仍然无法真正关闭 Catch 块中的应用程序,它似乎首先进入其他属性。这是主应用程序视图模型内的用户控件的视图模型。我是否需要向我的主视图模型发送消息以关闭?