🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

XAML

XAML(Extensible Application Markup Language)はWPF、Silverlight、Windows PhoneそしてWindows Store appsでユーザーインターフェースを定義するために使われるXML言語です。

WPF

Windows Presentation Foundation (WPF) は、魅力的な外観のユーザー エクスペリエンスを持つ Windows クライアント アプリケーションを作成するための次世代プレゼンテーション システムです

Q&A

解決済

1回答

1161閲覧

別プロジェクトにある文字列情報をユーザーコントロールのコード上で取得するには

tride

総合スコア68

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

XAML

XAML(Extensible Application Markup Language)はWPF、Silverlight、Windows PhoneそしてWindows Store appsでユーザーインターフェースを定義するために使われるXML言語です。

WPF

Windows Presentation Foundation (WPF) は、魅力的な外観のユーザー エクスペリエンスを持つ Windows クライアント アプリケーションを作成するための次世代プレゼンテーション システムです

0グッド

0クリップ

投稿2019/11/29 08:00

編集2019/11/29 08:02

別のプロジェクトにある以下StringRresouces.ja-jp.xamlにある文字列情報について、ユーザーコントロールのコードビハインド(cs)から取得するにはどうすればいいでしょうか。

MainWindow.xaml.csでは以下のようにして取得できているのですが、ユーザーコントロールからの方法が分からずに詰まってます。

<MainWindow.xaml.cs>

C#

1string moji = (string)this.FindResource("setting");

※以下コードについては下記URLのスレにてTN8001さんからの回答をいただいたコードをベースにしております。
https://teratail.com/questions/224205

<StringResource.ja-jp.xaml>

xaml

1<ResourceDictionary 2 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 3 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 4 xmlns:system="clr-namespace:System;assembly=mscorlib"> 5 <system:String x:Key="language">言語</system:String> 6 <system:String x:Key="setting">設定</system:String> 7</ResourceDictionary>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TN8001

2019/11/29 08:24

> string moji = (string)this.FindResource("setting"); これで取れているのでしたら同じプロジェクトなのでは? this(MainWindow)にあたる部分を取得できれば良いので、 Window.GetWindow(this).FindResource("setting");とか Application.Current.MainWindow.FindResource("setting"); とかで取れないですかね??
TN8001

2019/11/29 08:31

あぁUserControlが別のプロジェクトなんですね
tride

2019/11/29 08:37

あ。質問しておいて、今しがた回答いただいた内容と同じ内容で自己解決してしまいました・・・。 ちなみにUserControlが別プロジェクトではなかったです。 すいません。ベストアンサーに選びたい気分ですが、どうしましょう?
TN8001

2019/11/29 08:42

trideさんのほうで自己解決にされて結構ですよ。^^
tride

2019/11/29 08:46

承知しました。 お手数おかけしました。
guest

回答1

0

自己解決

TN8001さんの追記にて回答があります通り、以下コードで取得できました。
自己解決ではありますが、TN8001さんのご厚意により自己解決に書かせて頂きました。
TN8001さんには重ねてお礼申し上げます。

C#

1Window.GetWindow(this).FindResource("setting");

投稿2019/11/29 08:48

編集2019/11/29 08:50
tride

総合スコア68

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問