Can anyone tell me the difference between FrameworkElement obj=sender as FrameworkElement and FrameworkElement obj=(FrameworkElement) someobject
I am new to programming in Silverlight. Can anyone tell me the difference between
FrameworkElement obj=sender as FrameworkElement 
an开发者_如何转开发d
FrameworkElement obj=(FrameworkElement)someobject 
FrameworkElement obj=sender as FrameworkElement 
after this code obj will be FrameworkElement, if type of it is FrameworkElement, or null, in other cases. This code will not throw InvalidCastException.
FrameworkElement obj=(FrameworkElement)sender
this is explicit conversion, and this operation can throw an InvalidCastException
Casting and Type Conversions (C# Programming Guide)
Yes, the difference is
FrameworkElement obj=sender as FrameworkElement always works. If sender is not of type FrameworkElement, obj is null, otherwise you will find the casted object in there.
FrameworkElement obj=(FrameworkElement)someobject produces an InvalidCastException if sender cannot be casted to type FrameworkElement.
 
         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论