When I am doing it like that, the cell is empty :(

Op woensdag 10 juni 2015 18:12:59 UTC+2 schreef Ricardo Peres:
>
> Why not simply set User.Username as the DataField of your 
> BoundColumn-derived column?
> This syntax (prop1.prop2) is totally accepted.
>
> RP
>
> On Wednesday, June 10, 2015 at 2:31:10 PM UTC+1, 
> [email protected] wrote:
>>
>> Hi All,
>>
>> I'm using VB.NET and want to create a datagridview showing the value of 
>> a child property (Datapropertyname = User.Username).
>> I found following code:
>>
>> Private Function EvaluateValue(ByRef myObj As Object, ByRef myProp As 
>> String) As String
>>   Dim Ret As String = ""
>>   Dim Props As System.Reflection.PropertyInfo()
>>   Dim PropA As System.Reflection.PropertyInfo
>>   Dim ObjA As Object
>>
>>   If myProp.Contains(".") Then
>>
>>    myProp = myProp.Substring(0, myProp.IndexOf("."))
>>    Props = myObj.GetType().GetProperties()
>>
>>    For Each PropA In Props
>>
>>     ObjA = PropA.GetValue(myObj, New Object() {})
>>     If ObjA.GetType().Name = myProp Then
>>
>>      Ret = EvaluateValue(ObjA, myProp.Substring(myProp.IndexOf(".") + 1))
>>      Exit For
>>
>>     End If
>>
>>    Next
>>
>>   Else
>>
>>    PropA = myObj.GetType().GetProperty(myProp)
>>    Ret = PropA.GetValue(myObj, New Object() {}).ToString()
>>
>>   End If
>>
>>   Return Ret
>>  End Function
>>
>>
>> But when I am using this with following code:
>>
>> Private Sub List_CellFormatting(sender As Object, e As 
>> DataGridViewCellFormattingEventArgs) Handles List.CellFormatting
>>         Dim Grid As DataGridView = CType(sender, DataGridView)
>>         e.Value = Func.EvaluateValue(Grid.Rows(e.RowIndex).DataBoundItem, 
>> Grid.Columns(e.ColumnIndex).DataPropertyName)
>>     End Sub
>>
>> I get a null reference on ObjA.
>>
>> Anyone experienced with this? Or has someone another way to get the value of 
>> the child property in the datagrid?
>>
>>
>> Benjamin
>>
>>
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"nhusers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/nhusers.
For more options, visit https://groups.google.com/d/optout.

Reply via email to