C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[4]: 【WPF】Windowの継承について


(過去ログ 166 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■95676 / inTopicNo.1)  【WPF】Windowの継承について
  
□投稿者/ tama (1回)-(2020/09/02(Wed) 11:44:06)

分類:[.NET 全般] 

2020/09/02(Wed) 11:55:29 編集(投稿者)

dll上にWindow(cs、xaml)があり、
exe側からそのWindowのデザインに少し変更を加えて使用したいと考えております。

exe側にWindowクラス(WindowChild.xaml)を追加し、
以下のように継承させているのですがビルドエラーとなってしまいうまくいきません。

[WindowChild.cs]
public partial class WindowChild : WindowParent

[WindowChild.xaml]
<parent:WindowParent x:Class="WindowChild"
xmlns:parent="clr-namespace:WindowParent.View;assembly=WindowParent"


そもそもWindowの継承の仕方として間違っているのでしょうか?

開発環境:VS2017

引用返信 編集キー/
■95680 / inTopicNo.2)  Re[1]: 【WPF】Windowの継承について
□投稿者/ Hongliang (1085回)-(2020/09/02(Wed) 12:44:38)
「ビルドエラーとなってしまいうまくいきません。」で終わるのではなくて、
エラーメッセージを確認しましょう。

error MC6017: '***Window' は、XAML を使用して定義されているため、XAML ファイルのルートにすることはできません。
となっているはずです。
MC6017で検索すると以下のページも見つかります。
https://docs.microsoft.com/ja-jp/troubleshoot/dotnet/framework/error-mc6017-define-class-xaml

まあ結論としては
xaml使ってる要素から派生させてxamlで編集することは不可能なのでその方向は諦めてください
です。
引用返信 編集キー/
■95681 / inTopicNo.3)  Re[2]: 【WPF】Windowの継承について
□投稿者/ tama (2回)-(2020/09/02(Wed) 13:05:59)
No95680 (Hongliang さん) に返信

返信ありがとうございます。
xamlを派生させることは不可能とのことで了解しました。
やりたいことはWindowの一部を変更したいだけなのですが、
派生以外の方法で対処することは可能なのでしょうか。
引用返信 編集キー/
■95682 / inTopicNo.4)  Re[3]: 【WPF】Windowの継承について
□投稿者/ Hongliang (1086回)-(2020/09/02(Wed) 13:16:12)
> やりたいことはWindowの一部を変更したいだけなのですが、
> 派生以外の方法で対処することは可能なのでしょうか。

WindowParentの作り次第というところが極めて大きいですが。
WindowParentをnewしたうえで、LogicalTreeHelperを使うなどして要素を特定し、それを別要素に差し替えたり、というのはまあ不可能ではないでしょう。

// WindowParentの構造・機能も変えたい箇所もわからないので「だけ」というのが正当な評価かどうか判断できません。
引用返信 編集キー/
■95683 / inTopicNo.5)  Re[4]: 【WPF】Windowの継承について
□投稿者/ tama (3回)-(2020/09/02(Wed) 13:32:45)
No95682 (Hongliang さん) に返信

説明が不足していて申し訳ございません。
Windowの一部というのは、
既にボタンなどのコントロールが配置されていて、
そこに別のコントロールを追加したいという内容です。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -