2017-12-01 5 views
0

私はWPFでの経験を持つプログラマであり、UWPでプログラムを開始しています。 私のXAMLコードのほとんどは、私が克服できたいくつかの例外と互換性があります。UWPクラスライブラリでXAML静的リソースとデザインタイムデータを使用する方法

最初はすべてをスタンドアロンアプリケーションで試しましたが、今度は再利用可能なユーザーコントロールを作成する必要があります。そのために、私がプログラミングしたユーザーコントロールのコードをコピーしたUWPクラスライブラリを作成しました。アプリケーションで正常に動作しますが、ライブラリでNETクラスのインスタンスがリソース辞書や設計時データ拡張で作成されていないようです。

これは、アプリケーションでは動作しますが、ライブラリでは動作しないUser Control XAMLコードです(これは "d:"のデザインタイムデータを使用するバージョンです)。問題はCanvas.LeftとCanvas.Topのバインディングソース値を取得しないでください(画像はCanvas 0,0の位置に表示されます)。

<UserControl x:Class="NameSpace.XXXX" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:NameSpace" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" d:DesignHeight="355" d:DesignWidth="430"> 

    <Canvas Height="355" Width="430" d:DataContext="{d:DesignInstance Type=local:LocalClass, IsDesignTimeCreatable=True}"> 
    <Image x:Name="TI11" Source="Assets/Images/Image11.png" Canvas.Left="{Binding T11L}" Canvas.Top="{Binding T11T}" RenderTransformOrigin="0.5,0.5" Opacity="0.65" Height="071.053" Width="064.433"/> 

    ...... 

    </Canvas> 
</UserControl> 

私は同様の質問で検索しました、そして独立したUWP制御ライブラリが作成された記事を見てきましたが、この問題への参照を発見していません。

静的リソースのNETクラスとデザインタイムデータをUWPライブラリで使用できるように特別な処理が必要な場合は、誰も知っていますか?

+0

でこの問題を報告している「が、ライブラリには、NETクラスのインスタンスは、リソースディクショナリまたは設計時のデータの拡張子で作成されていないようです。」問題をより明確かつ詳細に記述してください。そして、 "ユーザーコントロール"で相対的なコードを表示してください。 –

+0

私はインスタンスが作成されていないと思うかもしれませんが、別の理由でライブラリ内でバインディングが機能しないことがあります。しばらくの間、私は失敗したコードを書くつもりです(質問したところ、UWPについてわかりませんでしたが、コードを書く必要はありませんでした) – SERWare

答えて

0

私の質問に対する答えは、UWPライブラリでデザインタイムデータを使用するために特別な作業を行う必要がなく、アプリケーションと同じように機能するはずです。

一時的なもので、Fall Creators Updateをターゲットとしたライブラリにのみ影響すると私は思っています。修正するまでターンアラウンドは、秋のクリエイターの更新ではなく、クリエイターの更新をターゲットにしています。

実際には、Fall Creators UpdateをVS 2017とサンプルコードでターゲットにするUWPライブラリを作成すると、デザインタイムデータバインディングが機能しなくなります。

Blend 2017でライブラリを開き、データウィンドウを使用してデザインタイムデータを生成しようとすると、秋のクリエイターアップデート(Blendのメッセージが添付されています)をターゲットにしたプロジェクトでデータウィンドウ機能を使用できないことがBlendによって通知されます。

enter image description here

私はhttps://developercommunity.visualstudio.com/content/problem/172286/design-time-data-in-uwp-library-not-working-in-vs.html

関連する問題