1. ホーム
  2. c#

[解決済み】「入力文字列が正しい形式ではありませんでした」エラーの解決方法は?[重複しています]。

2022-01-31 23:03:17

質問内容

試してみたこと

マークアップする。

 <asp:TextBox ID="TextBox2"   runat="server"></asp:TextBox>

    <asp:Label ID="Label1" runat="server" AssociatedControlID="TextBox2"  Text="Label"></asp:Label>

    <asp:SliderExtender ID="SliderExtender1"  TargetControlID="TextBox2"  BoundControlID="Label1" Maximum="200" Minimum="100" runat="server">
    </asp:SliderExtender>

コード・ビハインド

protected void setImageWidth()
{
    int imageWidth;
    if (Label1.Text != null)
    {
        imageWidth = 1 * Convert.ToInt32(Label1.Text);
        Image1.Width = imageWidth;
    }
}

ブラウザでこのページを実行すると System.FormatException : 入力文字列が正しい形式ではありません。

解決方法は?

問題は行にあります

imageWidth = 1 * Convert.ToInt32(Label1.Text);

Label1.Text は、int型であってもなくてもよい。 チェック .

使用方法 Int32.TryParse(value, out number) の代わりに そうすれば問題は解決します。

int imageWidth;
if(Int32.TryParse(Label1.Text, out imageWidth))
{
    Image1.Width= imageWidth;
}