A certain engineer "COMPLEX"

開発メモ その29 'PropertyArrayStart' のタグは、テンプレート セクションでサポートされていません。

Problem


タイトルが意味不明ですが、現象としては、DataTemplateで2次元配列の依存関係プロパティにBindingしてビルドしたら発生したエラー。
どうもこのエラー、2017年1月現在、日本語圏で誰一人として遭遇している人がいない模様。
PropertyArrayStart というワードを日本語検索しても件数0。

ちなみに、英語だと Tags of type 'PropertyArrayStart' are not supported in template sections になります。

Solution


Stackoverflowで同じ問題に遭遇した人がいました。
凄いね、Stackoverflow!

解決策としては、IListに変更すれば、最小のコード変更で解決できるよ、とのこと。

でも、2次元としてデータを扱いたいため、どこでデータの区切りがあるかわからないので、この手法は不可。
なので、ラッパークラスを作って回避。
幅と高さを別にBindingして、IListを渡しても良いのですが、どのBindingが先に実行されるかわからないのと、一つのプロパティで解決したいのでこうなりました。

余談ですが、この問題、Microsoft Connect にあがっていましたが、最終的に修正しないになりました。

コメントを残す

メールアドレスが公開されることはありません。

%d人のブロガーが「いいね」をつけました。