Первый вариант: Я бы предложил показать пользователю диалог сохранения.
Прочтите документацию по адресу: https://docs.microsoft.com/en-us/dotnet/framework/winforms/controls/how-to-save-files-using-the-savefiledialog-component .
// Displays a SaveFileDialog so the user can save the Image
// assigned to Button2.
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.Filter = "Text Image|*.txt";
saveFileDialog1.Title = "Save the File";
saveFileDialog1.ShowDialog();
// If the file name is not an empty string open it for saving.
if(saveFileDialog1.FileName != "")
{
/// Write a text file here at path saveFileDialog1.FileName
}
Второй вариант (если вы все еще хотите придерживаться временных файлов):
Я бы предложил использовать временную папку.
string windowsTempPath = Path.GetTempPath();
var filePath = Path.Combine(windowsTempPath, "file_" + DateTime.Now.ToFileTimeUtc() + ".txt");
//// Write txt file
//// For opening file, use Process.Start
Process.Start(filePath);
Это запустит программу по умолчанию, чтобы открыть текстовый файл. Вы не будете зависеть от блокнота или блокнота ++.
Надеюсь, это поможет.
К сожалению, их не горизонталь, выравнивают свойство, доступное в спецификации RDL (там является вертикальным, выравниваются, и текст выравниваются), таким образом, нет никакого лучшего способа сделать это.
Можно использовать некоторые приемы для получения визуальных эффектов, ближе, или прекрасных (текстовые поля работают отлично, tablix's более жестки и зависят в ряде их настроек):
- Поместите правый край, где Вы хотите его и перетаскиваете левый край к максимальному размеру, Вы хотите обслужить, установить текст, выравнивают свойство к правильному, Набору CanGrow ко лжи (на tablix, необходимо сделать это на столбцах само, где на текстовом поле это доступно непосредственно): То, что это сделает, позволяют, чтобы текст казался выровненным по правому краю правильно с обработанным ростом и никакие проблемы экспорта.
- Другой прием должен поместить Ваши элементы в прямоугольник, который может помочь ограничить его.
Эти опции будут хорошо работать с динамично сгенерированным RDL's, или устанавливающий в ПРЕДЛОЖЕНИЯХ или Построителе отчетов, как должен все опции, поскольку это - RDL, который является ограничивающим фактором не инструмент/метод, который создает его.