Showing posts with label devexpress. Show all posts
Showing posts with label devexpress. Show all posts

15 October 2021

DevExpress XML Serialization Format

I've been stuck picking through serialized DevExpress layouts by hand lately. One aspect of it that had me confused for a while was this notation that appears within serialized structs:

<property name="XtraSerializerScreenConfiguration" iskey="true" value="1">
   <property name="Item1">@1,X=0@1,Y=0@4,Width=1920@4,Height=1080</property>
</property>

What's with the @?

Similar notation is used for FloatSize, FloatLocation, OriginalSize, XtraBounds.

It turns out the format is simply this:

  • each @ starts a new field in the struct
  • the per-field format is:  @{0},{1}={2}
  • where {1} and {2} are naturally the field name and value respectively.
  • and the cryptic {0} is the number of characters required for the value {2}.
There you go.