views:

9

answers:

0

Scenario: I'm trying to build my DataContext object tree for use as design time data. Great, awesome.

Issue: I have a few types, some I control and some (such as DataRowView) that I don't, which cannot be simply new-ed up. I need some way to create instances of these types for use in my models.

What I'd love is an equivalent of the TypeConverter but for tags defined within property element tags. TypeConverters are usually only used to go from string attributes of tags to instances of a type during xaml deserialization.

<MyModel DataRowViews="column1,value1;column2,value2" ThisIsPossible="true" />

This is possible, using TypeConverters, but unfortunately it is not practical due to what is stored in the DataRowView. This, however, is much more like it:

<MyModel ThisIsPossible="false">
  <MyModel.DataRowViews>
    <DataRowViewDesignTimeCollectionWithTypeConvertersLol>
      <MockDataRowView Column="Column1" Value="value1" />
      <MockDataRowView Column="Column2">
      <MockDataRowView.Value>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras non dolor dolor. Nulla et nisi at leo bibendum pulvinar. Donec sem diam, pharetra eu cursus nec, vestibulum sed ipsum. Vestibulum in semper risus. Nam viverra condimentum aliquet. In hendrerit cursus condimentum. Phasellus sed libero id erat elementum feugiat. Proin mollis, sem a euismod volutpat, lacus augue molestie dolor, vel faucibus nibh nisl ut leo. Vestibulum nunc eros, dignissim ac pulvinar id, commodo at enim. Donec eget urna ligula. Duis congue posuere euismod. Sed in augue eu augue consequat convallis. Ut eget est ut ipsum volutpat hendrerit quis a sapien. Donec at nulla vitae augue tristique elementum in congue odio. Nulla eu mauris non diam convallis luctus nec at magna. Suspendisse potenti. Vivamus ut ante tortor, ac interdum nisi. Nam blandit blandit erat eget dapibus. Praesent accumsan ipsum ac est dictum dignissim. Maecenas varius urna in nunc cursus sit amet lobortis urna mattis.
Aliquam ac lectus ut est feugiat luctus. Sed hendrerit facilisis augue sollicitudin cursus. Curabitur dapibus pharetra nulla et dictum. In diam ante, commodo eget volutpat ut, commodo in magna. Cras posuere magna id nisi malesuada at laoreet felis auctor. Praesent facilisis tortor sapien, nec semper tortor. Cras interdum pharetra ornare. Aenean sagittis massa ut felis ultrices at faucibus odio laoreet. Proin fermentum consequat urna sit amet fermentum. Proin non fringilla mi. Donec dignissim condimentum cursus. Nullam in turpis lectus, eget sodales enim. Vivamus in felis eu est vulputate hendrerit. Sed mi lorem, dapibus sed tincidunt eget, viverra quis dui. Vivamus vitae interdum mauris. Nullam consectetur orci sit amet tellus molestie sed hendrerit nulla volutpat. Fusce volutpat odio et odio molestie non fringilla est ultrices. Sed rhoncus pretium tortor, id tincidunt nisl commodo non. Nullam adipiscing vestibulum est, id molestie risus cursus sed. Nunc pharetra, odio sit amet vehicula sollicitudin, sapien sapien viverra leo, eu vestibulum felis arcu sed arcu.
      </MockDataRowView.Value>
      </MockDataRowView>
    </DataRowViewDesignTimeCollectionWithTypeConvertersLol>
  </MyModel.DataRowViews>
</MyModel>

I'd like the xaml deserializer to use a type converter not just on attributes but also on property types as well. As of right now, it appears that it simply skips over the types that don't belong and chugs along happily, leaving my design time experience less than such.

Any suggestions on how to deal with this situation would be greatly appreciated.