WPFでxamlをコピーするとうまくいきません
CatchCopyEditView.xamlをコピーしてCommentEditView.xamlを作成します。
以下xamlファイルです。
<local:SubViewBase x:Class="AAA.View.Companion.CatchCopyEditView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:AAA.View.Companion"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="900">
<Grid Background="White">
<ListBox ItemsSource="{Binding Path=CatchCopies}">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
</Style>
</ListBox.ItemContainerStyle>
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Margin="1">
<Border BorderBrush="Silver"
BorderThickness="1">
<Grid Margin="3">
<Grid.RowDefinitions>
<RowDefinition Height="24" />
<RowDefinition Height="24" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="250" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="80" />
</Grid.ColumnDefinitions>
<Label Content="{Binding SiteNameJIS}"
Grid.Row="0"
Grid.Column="0"/>
<Label Content="{Binding TipsMessage}"
Grid.Row="0"
Grid.Column="1"/>
<TextBox Text="{Binding Data, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Grid.Row="1"
Grid.Column="1"/>
<Label Content="{Binding RestMessage}"
Grid.Row="1"
Grid.Column="2"
Foreground="Red"/>
</Grid>
</Border>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
</ListBox>
</Grid>
</local:SubViewBase>
以下コードビハインドです
using System;
namespace XXX.View.Companion
{
public partial class CatchCopyEditView
: SubViewBase
{
public CatchCopyEditView()
{
InitializeComponent();
}
public override void OnInitialize() { } public override void OnPause() { } public override void OnResume() { } public override void OnTerminate() { } }
}
これら2つのファイルをCatchCopyからCommentに変更すると
InitializeComponent();の部分にエラーが生じます。
CatchCopyのコードビハインド(InitializeComponentの部分)
には
次のメソッドまたはプロパティー間で呼び出しが不適切です CatchCopyEditView.InitializeComponent ();とCatchCopyEditView.InitializeComponent ();
と2つCatchCopyEditView.InitializeComponent ();が出て
Commentのコードビハインド(InitializeComponentの部分)には
現在のコンテキストにはInitializeComponent ();が存在しませんと
エラーが出ます。
この理由ご教授いただければありがたいです。
ちなみにベースクラスは
public abstract class SubViewBase : UserControl
{
/// <summary>
/// 初期化
/// </summary>
public abstract void OnInitialize();
/// <summary> /// 表示前イベント /// </summary> public abstract void OnResume(); /// <summary> /// 表示終了イベント /// </summary> public abstract void OnPause(); /// <summary> /// 破棄 /// </summary> public abstract void OnTerminate(); }
と定義しています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。