私は VS2012 で ASP.NET Web フォーム プロジェクトに取り組んでいます。Trips.ascx という名前のユーザー コントロールを作成しました。VS にローカル リソース ファイル (Trips.ascx.resx) を自動生成してもらいました。リソース ファイルを追加した後、必要なプロパティ/値のみが含まれるようにクリーンアップしました。それはうまくいきました。次に、リソース ファイルを複製し、ポルトガル語をサポートするために Trips.ascx.pt.resx という名前を付けました。なんらかの理由でプロジェクトを実行すると、次のようなパーサー エラーが発生します。
パーサー エラー メッセージ:タイプ 'Telerik.Web.UI.GridBoundColumn' には、'HeaderTextpt' という名前のパブリック プロパティがありません。
「HeaderText」プロパティに「pt」を追加する理由がわかりません。
このエラーが発生する理由について何か考え/提案はありますか?
更新: Trips.ascx.pt.resx という名前の空のリソース ファイルを作成すると、エラーがスローされないことに気付きました。コントロール自体で参照されているのと同じ名前のエントリを追加し始めたときだけです (例: "CaloriesLabelResource1.Text" をリソース キーとして Trips.ascx.pt.resx に追加したとき)。
参考までに、私のフォルダ構造は次のとおりです。
-計画
--コントロール
---App_LocalResources
---旅行
----App_LocalResources
-----Trips.ascx.pt.resx
-----Trips.ascx.resx
----Trips.ascx
...
リソースの呼び出しを使用するコードは次のとおりです。
<telerik:RadGrid runat="server"
ID="MyTripsGrid"
OnNeedDataSource="MyTripsGrid_NeedDataSource"
AllowPaging="True" >
<MasterTableView runat="server" AutoGenerateColumns="false">
<Columns>
<telerik:GridBoundColumn UniqueName="DateColumn" HeaderText="Date" DataField="Rented" DataFormatString="{0:MM/dd/yy}" meta:resourcekey="DateGridBoundColumnResource1" />