<igDP:XamDataPresenter Name="xamDataPresenter1" RecordFixedLocationChanged="OnRecordFixedLocationChanged"> </igDP:XamDataPresenter>
エンド ユーザーが、固定レコードを含む DataPresenter コントロールを並べ替えると、固定レコードは相互に並べ替えられます。並べ替え操作によって固定レコードの順序を変更したくない場合は、 FieldLayoutSettings オブジェクトの FixedRecordSortOrder プロパティを FixOrder に設定できます。
並べ替え操作のあとで、エンド ユーザーがレコードを固定する場合、DataPresenter コントロールは固定レコードを再度並べ替えます。固定レコードは、固定レコード リストに追加され、DataPresenter コントロールのスクロール可能領域の一番近くになります。つまり、上部に固定されたレコードは、固定レコード リストの下部に追加され、下部に固定されたレコードは、固定レコード リストの上部に追加されることを意味します。ただし、現在の並べ替え条件に基づいて、レコードをその適切なスロットに挿入したい場合は、 RecordFixedLocationChanged イベントを処理し、イベント ハンドラーで Record オブジェクトの RefreshSortPosition メソッドを呼び出します。
以下のコード例は、並べ替え順に固定レコードを追加する方法を示します。
XAML の場合:
<igDP:XamDataPresenter Name="xamDataPresenter1" RecordFixedLocationChanged="OnRecordFixedLocationChanged"> </igDP:XamDataPresenter>
Visual Basic の場合:
Imports Infragistics.Windows.DataPresenter.Events ... Private Sub OnRecordFixedLocationChanged(ByVal sender As Object, ByVal e As RecordFixedLocationChangedEventArgs) e.Record.RefreshSortPosition() End Sub ...
C# の場合:
using Infragistics.Windows.DataPresenter.Events; ... private void OnRecordFixedLocationChanged(object sender, RecordFixedLocationChangedEventArgs e) { e.Record.RefreshSortPosition(); } ...