バージョン

FixedFieldUIType プロパティ

表示されている UI のタイプを決定して、エンド ユーザーがフィールドの FixedLocation を変更できるようにします。
シンタックス
'宣言
 
Public Property FixedFieldUIType As FixedFieldUIType
public FixedFieldUIType FixedFieldUIType {get; set;}
解説

注: UI は表示されなくても、エンド ユーザーは列を固定領域から/にドラッグすることによって、FixedLocation を変更することが可能です(FieldItem.AllowFixingResolved は状態の変更を可能にし、フィールドの移動が可能であることを前提とします)。

使用例
The following sample demonstrates how to enable fixing for fields. It uses the FixedLocation to determine the initial fixed position of a specific field and prevents one of them from being unfixed.

        <igDP:XamDataGrid BindToSampleData="True">
            
<igDP:XamDataGrid.FieldSettings>
                
<!-- Enable fixing for all fields -->
                
<igDP:FieldSettings AllowFixing="NearOrFar" />
            
</igDP:XamDataGrid.FieldSettings>
            
<igDP:XamDataGrid.FieldLayouts>
                
<igDP:FieldLayout>
                    
<igDP:FieldLayout.Fields>
                        
<!-- Initialize some fields so they start out fixed -->
                        
<igDP:Field Name="name" FixedLocation="FixedToNearEdge" />
                        
                        
<!-- fix this to the right and prevent the user from changing it -->
                        
<igDP:Field Name="department" FixedLocation="FixedToFarEdge">
                            
<igDP:Field.Settings>
                                
<igDP:FieldSettings AllowFixing="No" />
                            
</igDP:Field.Settings>
                        
</igDP:Field>
                    
</igDP:FieldLayout.Fields>
                
</igDP:FieldLayout>
            
</igDP:XamDataGrid.FieldLayouts>
        
</igDP:XamDataGrid>        <igDP:XamDataGrid BindToSampleData="True">
            
<igDP:XamDataGrid.FieldSettings>
                
<!-- Enable fixing for all fields -->
                
<igDP:FieldSettings AllowFixing="NearOrFar" />
            
</igDP:XamDataGrid.FieldSettings>

            
<!-- The FixedFieldUIType determines what ui is presented 
                to the end user to change the fixed location of a field 
-->
            
<igDP:XamDataGrid.FieldLayoutSettings>
                
<igDP:FieldLayoutSettings FixedFieldUIType="ButtonAndSplitter" />
            
</igDP:XamDataGrid.FieldLayoutSettings>
            
            
<igDP:XamDataGrid.FieldLayouts>
                
<igDP:FieldLayout>
                    
<igDP:FieldLayout.Fields>
                        
<!-- Initialize some fields so they start out fixed -->
                        
<igDP:Field Name="name" FixedLocation="FixedToNearEdge" />
                        
                        
<!-- fix this to the right and prevent the user from changing it -->
                        
<igDP:Field Name="department" FixedLocation="FixedToFarEdge">
                            
<igDP:Field.Settings>
                                
<igDP:FieldSettings AllowFixing="No" />
                            
</igDP:Field.Settings>
                        
</igDP:Field>
                    
</igDP:FieldLayout.Fields>
                
</igDP:FieldLayout>
            
</igDP:XamDataGrid.FieldLayouts>
        
</igDP:XamDataGrid>
Imports Infragistics.Windows.DataPresenter

    Private Sub InitializeDP(ByVal dp As DataPresenterBase)
        ' FixedFieldUIType determine the elements that are displayed in the ui
        ' that the end user may use to change the state of the fixedlocation
        ' of the fields that allow fixing
        dp.FieldLayoutSettings.FixedFieldUIType = FixedFieldUIType.ButtonAndSplitter

        ' AllowFixing determines whether the fixed state may be changed by the 
        ' user. note, even if fixedfielduitype is none the fixed state could 
        ' be changed by dragging a field into or out of a fixed area
        dp.FieldSettings.AllowFixing = AllowFieldFixing.NearOrFar

        ' just use sample data for the demo
        dp.BindToSampleData = True

        Dim fl As FieldLayout = New FieldLayout()

        ' the following field should start off as fixed to the near edge. since 
        ' we have enabled fixing, its fixed state can be changed by the end user
        Dim fldName As Field = New Field()
        fldName.Name = "name"
        fldName.FixedLocation = FixedFieldLocation.FixedToNearEdge
        fl.Fields.Add(fldName)

        ' the following field should start off as fixed to the far edge but 
        ' using the AllowFixing for this field's settings we can prevent the 
        ' end user from being able to change its state
        Dim fldDept As Field = New Field()
        fldDept.Name = "department"
        fldDept.FixedLocation = FixedFieldLocation.FixedToFarEdge
        fldDept.Settings.AllowFixing = AllowFieldFixing.No
        fl.Fields.Add(fldDept)

        dp.FieldLayouts.Add(fl)
    End Sub
using Infragistics.Windows.DataPresenter;

    private void InitializeDP(DataPresenterBase dp)
    {
        // FixedFieldUIType determine the elements that are displayed in the ui
        // that the end user may use to change the state of the fixedlocation
        // of the fields that allow fixing
        dp.FieldLayoutSettings.FixedFieldUIType = FixedFieldUIType.ButtonAndSplitter;

        // AllowFixing determines whether the fixed state may be changed by the 
        // user. note, even if fixedfielduitype is none the fixed state could 
        // be changed by dragging a field into or out of a fixed area
        dp.FieldSettings.AllowFixing = AllowFieldFixing.NearOrFar;

        // just use sample data for the demo
        dp.BindToSampleData = true;

        FieldLayout fl = new FieldLayout();

        // the following field should start off as fixed to the near edge. since 
        // we have enabled fixing, its fixed state can be changed by the end user
        Field fldName = new Field();
        fldName.Name = "name";
        fldName.FixedLocation = FixedFieldLocation.FixedToNearEdge;
        fl.Fields.Add(fldName);

        // the following field should start off as fixed to the far edge but 
        // using the AllowFixing for this field's settings we can prevent the 
        // end user from being able to change its state
        Field fldDept = new Field();
        fldDept.Name = "department";
        fldDept.FixedLocation = FixedFieldLocation.FixedToFarEdge;
        fldDept.Settings.AllowFixing = AllowFieldFixing.No;
        fl.Fields.Add(fldDept);

        dp.FieldLayouts.Add(fl);
    }
参照