0

私はWPFいくつかのゲームやビジュアルアプリを使い始めました。

私の最初のアプリでは、空のプロジェクトを開始し、次のように動的に画像を追加および削除したキャンバスを持つウィンドウから継承するクラスを作成しました。

class MainWindow : Window
{
    public Canvas canvas=new Canvas();

    public MainWindow()
    {
    this.addChild(canvas);
    }

    //add an image every second move it and remove it
}

これは静的なXMLでは不可能ですが、コントロールを動的に行うのは良くないという意見がありましたが、本当ですか?

パフォーマンスの低下ですか?

そして、ラグなしで 30 fps で 100 枚の画像を描画する簡単で効率的な方法はありますか?

4

2 に答える 2

2

パフォーマンスの低下はありません / パフォーマンスの低下は、物事を正しい方法で行うことによって得られる巨大な生産性 / コードのクリーンさと比較してごくわずかです。

また、XAML は静的ではありません。

がありDataBinding、アイテムを動的に追加/削除する必要がある場合はItemsControl.

DataTemplatesどの Model / ViewModel オブジェクトが渡されるかに応じて、特定の UI を動的にレンダリングするという概念もあります。

手続き型コードで UI 要素を操作または作成しないでください。WPF は winform ではありません。

于 2013-07-03T03:58:37.180 に答える