問題タブ [xname]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wpf - 特定の UserControls に x:Name を適用しますか?
私の部署では、約 1 年前に自動化された GUI テストに Ranorex を使用し始めました。正しく動作させるために、Ranorex は、基本的にすべての XAML 要素が一意の x:Uid タグを取得するように、プロジェクトで PreBuild イベントを使用している特定の UserControls を識別する必要があります。
"$(MSBuildBinPath)\MSBuild.exe" /p:Configuration=$(ConfigurationName) /p:Platform=$(PlatformName) /t:updateuid "$(ProjectPath)" > NUL
この現在のソリューションは機能していますが、私が気に入らない 2 つの欠点があります。2. 要素に対して x:Name が定義されていない場合、AutomationId は msbuild.exe から "TextBox_1"、"TextBox2_"、"TextBox3_" などの一般的な名前を受け取ります。テストを作成するときに正しい UserControl を識別します。
Visual Studioで、特定の UserControl 型に対して x:Name の使用を強制できるようにできれば、私たちにとってより良いものになるでしょう。すべてのケースの 99% で、TextBox、ComboBox、CheckBox などのユーザー入力に使用される UserControls のみがテスターによって使用されます。x:Name を必要としないことが WPF の優れた部分の 1 つであることはわかっていますが、私たちの場合、それは本当に理にかなっているので、疑問が残ります。
Visual Studio で x:Name の使用を強制する方法はありますか?