// 1 ページ目
mediaSelector.ImagePageCombo.SelectedIndex = 0;
mediaSelector.AlternativeTextBox.Text = "Page 1";
+ mediaSelector.ValidateChildren();
// 2 ページ目
mediaSelector.ImagePageCombo.SelectedIndex = 1;
mediaSelector.AlternativeTextBox.Text = "Page 2";
+ mediaSelector.ValidateChildren();
// 3 ページ目 (新規ページ)
mediaSelector.ImagePageCombo.SelectedIndex = 2;
mediaSelector.AlternativeTextBox.Text = "Page 3";
+ mediaSelector.ValidateChildren();
mediaSelector.ImagePageCombo.SelectedIndex = 0;
Assert.Equal("Page 1", mediaSelector.AlternativeTextBox.Text);
}
}
- private void ValidateNewFileMediaItem(string path, bool noMsgBox)
+ private void ValidateNewFileMediaItem(string path, string altText, bool noMsgBox)
{
var media = (SelectedMedia)ImagePageCombo.SelectedItem;
var item = media.Item;
media.Item = null;
item = CreateFileMediaItem(path, noMsgBox);
- item.AltText = AlternativeTextBox.Text;
}
+ if (item != null)
+ item.AltText = altText;
+
ImagefilePathText.Text = path;
+ AlternativeTextBox.Text = altText;
ImageFromSelectedFile(item, noMsgBox);
}
this.FilePickDialogClosed?.Invoke(this, EventArgs.Empty);
}
- ValidateNewFileMediaItem(FilePickDialog.FileName, false);
+ ValidateNewFileMediaItem(FilePickDialog.FileName, AlternativeTextBox.Text.Trim(), false);
}
private void ImagefilePathText_Validating(object sender, CancelEventArgs e)
return;
}
- ValidateNewFileMediaItem(ImagefilePathText.Text.Trim(), false);
+ ValidateNewFileMediaItem(ImagefilePathText.Text.Trim(), AlternativeTextBox.Text.Trim(), false);
}
private void ImageFromSelectedFile(IMediaItem item, bool noMsgBox)
ValidateSelectedImagePage();
}
- private void AlternativeTextBox_TextChanged(object sender, EventArgs e)
+ private void AlternativeTextBox_Validating(object sender, CancelEventArgs e)
{
- var selectedMedia = (SelectedMedia)this.ImagePageCombo.SelectedItem;
- if (selectedMedia.Item == null)
- return;
-
- selectedMedia.Item.AltText = this.AlternativeTextBox.Text;
+ var imageFilePath = this.ImagefilePathText.Text.Trim();
+ var altText = this.AlternativeTextBox.Text.Trim();
+ this.ValidateNewFileMediaItem(imageFilePath, altText, noMsgBox: false);
}
}
}