Select to view content in your preferred language

XAML to Code-behind translation

712
2
06-28-2010 05:25 PM
LanceCrumbliss
Frequent Contributor
hi all,

given this XAML:

           <slData:DataGrid x:Name="QueryDetailsDataGrid" AutoGenerateColumns="False" HeadersVisibility="Column" Background="White"
                             IsReadOnly="True" Canvas.Left="10" Canvas.Top="50" Height="140" Width="530"
                             HorizontalScrollBarVisibility="Hidden">
                <slData:DataGrid.Columns>
                    <slData:DataGridTextColumn Width="85" Binding="{Binding Attributes[STATE_NAME]}" Header="State Name"/>
                    <slData:DataGridTextColumn Width="110" Binding="{Binding  Attributes[SUB_REGION] }" Header="Region"/>
                    <slData:DataGridTextColumn Width="45" Binding="{Binding  Attributes[STATE_FIPS] }" Header="FIPS"/>
                    <slData:DataGridTextColumn Width="85" Binding="{Binding  Attributes[STATE_ABBR] }" Header="Abbreviation"/>
                    <slData:DataGridTextColumn Width="103" Binding="{Binding  Attributes[POP2000] }" Header="Population 2000"/>
                    <slData:DataGridTextColumn Width="102" Binding="{Binding  Attributes[POP2007] }" Header="Population 2007"/>
                </slData:DataGrid.Columns>
            </slData:DataGrid>


what is the equivalent code-behind for
Binding="{Binding  Attributes[POP2000] }"


i've got

   Private Sub QueryTask_Completed(ByVal sender As Object, ByVal e As QueryEventArgs)

       Dim fs As FeatureSet = e.FeatureSet
       If fs IsNot Nothing AndAlso fs.Features.Count > 0 Then
           AttributeTableDataGrid.ItemsSource = fs.Features
           AttributeTableDataGrid.DataContext = fs.Features

           For Each kvp As KeyValuePair(Of String, String) In e.FeatureSet.FieldAliases
               Dim dgtc As New DataGridTextColumn With{.Header = kvp.Key, .Binding = (New Data.Binding("Attributes"))}
               AttributeTableDataGrid.Columns.Add(dgtc)
           Next
       End If
   End Sub


but that doesn't seem to be it.  bindings drive me nuts and i can't find anything online specific enough.
0 Kudos
2 Replies
DominiqueBroux
Esri Frequent Contributor
Should be something like:
 
Dim dgtc As New DataGridTextColumn With{.Header = kvp.Value, .Binding = (New Data.Binding("Attributes[" + kvp.Key + "]"))}
0 Kudos
LanceCrumbliss
Frequent Contributor
Should be something like:
 
Dim dgtc As New DataGridTextColumn With{.Header = kvp.Value, .Binding = (New Data.Binding("Attributes[" + kvp.Key + "]"))}


grrrrrr, that's it.  i can't tell you how frustrated i was after literally hours of trying to figure that out.  sad, but true.  thanks a million.
0 Kudos