我需要將用戶名綁定到DomainDataSource QueryParameter。我的理解是,以下不工作:將數據綁定到DomainDataSource查詢參數
<RiaControls:DomainDataSource x:Name="MyData" LoadSize="20" QueryName="GetStockByCompany" AutoLoad="True">
<RiaControls:DomainDataSource.DomainContext>
<ds:InventoryDomainContext />
</RiaControls:DomainDataSource.DomainContext>
<RiaControls:DomainDataSource.QueryParameters>
<riadata:Parameter
ParameterName="userName"
Value="{Binding Path=User.Name}" />
</RiaControls:DomainDataSource.QueryParameters>
</RiaControls:DomainDataSource>
我不反對使用C#代碼隱藏頁面的一部分,但我不知道把這個在什麼情況下
。到目前爲止,我已經試過這樣:
public Inventory()
{
InitializeComponent();
Loaded += Inventory_Loaded;
}
private void Inventory_Loaded(object sender, RoutedEventArgs e)
{
this.MyData.QueryParameters.Add(new Parameter { ParameterName = "userID", Value = RiaContext.Current.User.Name});
}
但由於在InitializeComponent()觸發第一和loades數據,這將導致DomainDataSource轟炸由於查詢沒有任何參數運行......這沒」工作。
接下來我想這...
[XAML文件]
<RiaControls:DomainDataSource x:Name="MyData" LoadSize="20" QueryName="GetStockByCompany" AutoLoad="True" LoadingData="MyData_LoadingData">
[CS文件]
private void MyData_LoadingData(object sender, LoadingDataEventArgs e)
{
this.MyData.QueryParameters.Add(new Parameter { ParameterName = "userID", Value = RiaContext.Current.User.Name});
}
遺憾的是,事件從來沒有發射。我不知道爲什麼。
我甚至試過這樣: [XAML文件]
<RiaControls:DomainDataSource x:Name="MyData" LoadSize="20" QueryName="GetStockByCompany" AutoLoad="True" LoadedData="MyData_LoadedData">
[CS文件]
private void MyData_LoadedData(object sender, LoadedDataEventArgs e)
{
this.MyData.QueryParameters.Add(new Parameter { ParameterName = "userID", Value = RiaContext.Current.User.Name});
}
但那只是愚蠢。
我不知所措。如何在頁面加載時使用參數加載此查詢?
謝謝!
輝煌! 你是個天才。 謝謝! – Joe 2009-11-10 20:59:58