これは T4 の仕事のようですね。
T4 とリフレクションを使用して、これらすべてのプロパティを含む部分クラスを作成できます。このクラスが 1 つだけの場合、手動で行うよりも作業が増える可能性があります。どのくらいの頻度で使用するかを決める必要があると思います。
編集:
T4 の意味: テキスト テンプレート変換ツールキット
これは Visual Studio に組み込まれており、コードを生成するテンプレートを作成できます。
あらゆる種類の繰り返しコードまたは定型コードを記述する必要がある場合はいつでも役立ちます。
私はあなたのために始めました。ソリューションに MyUserControl.tt という名前の新しいファイルを作成し、以下のコードをコピーします。
保存するとすぐに、MyUserControl.cs という名前の新しいファイルが表示され、すべてのプロパティが一覧表示されます。
これにより部分クラスが作成されるため、既存のユーザー コントロールと一致するようにクラス名と名前空間を微調整する必要があります。私はあなたのテキストボックスの名前がターゲットであると仮定しましたが、明らかにそれも微調整できます。
<#@ template debug="false" hostspecific="false" language="C#" #>
<#@ output extension=".cs" #>
<#@ assembly name="System.Web" #>
<#@ import namespace="System.Reflection" #>
public partial class MyUserControl
{
<#
PropertyInfo[] properties = typeof(System.Web.UI.WebControls.TextBox).GetProperties(
BindingFlags.Public | BindingFlags.Instance);
foreach (PropertyInfo property in properties)
{
WriteLine(string.Format(" public {0} {1}", property.PropertyType.FullName, property.Name));
WriteLine(" {");
if(property.GetGetMethod() != null)
{
WriteLine(" get { return Target." + property.Name + "; } ");
}
if(property.GetSetMethod() != null)
{
WriteLine(" set { Target." + property.Name + " = value; } ");
}
WriteLine(" }");
WriteLine("");
}
#>
}