мы можем скопировать текст буфера обмена в массив - PullRequest
0 голосов
/ 24 октября 2010

Я попытался создать список из 5 элементов массива, в который скопирован последний текст из 5 буферов обмена

но я не могу сделать это каждый раз, когда текст буфера обмена перезаписывает предыдущий и в первом элементе массива

и печатает только последний, который я хочу распечатать все, как я могу это сделать.

если мой случай возможен, пожалуйста, дайте мне какое-нибудь решение

Ответы [ 2 ]

1 голос
/ 24 октября 2010

Как насчет: Вы управляете пользовательским объектом во время чтения / записи на Clipboard. Например, MyCustomClipboardClass.

Каждый раз, когда вы собираетесь переместить данные в буфер обмена;

  • Получите ваш MyCustomClipboardClass объект.
  • Добавьте к ней свой текст.
  • Сохранить этот объект в буфер обмена.

См. Следующее:

[Serializable]
class MyCustomClipboardClass
{
    List<string> m_lstTexts = new List<string>();

    public void AddText(string str)
    {
        m_lstTexts.Add(str);
    }
}
0 голосов
/ 24 октября 2010

Вы можете сделать что-то подобное, если я правильно понимаю вопрос (если вы хотите сохранить последние 5 пунктов буфера обмена программно):

    const int MaxItems = 5;
    static readonly List<string> ClipboardData = new List<string>();

    public static void SaveClipboard()
    {
        ClipboardData.Add(Clipboard.GetText());
        if (ClipboardData.Count > MaxItems) ClipboardData.RemoveAt(0);
    }

    // You don't need lines later, I show them just as example
    [STAThreadAttribute]
    static void Main()
    {
        for (int i = 0; i < 10; i++)
        {
            Clipboard.SetText(i.ToString());
            SaveClipboard();
        }

        foreach (var s in ClipboardData)
        {
            Console.WriteLine(s);
        }

        Console.ReadLine();
    }

Если вам нужен способ @KMan, проверьте и этот вопрос: C # / WPF Можно ли сохранить в буфере обмена более одного типа?


Так что вы должны вызывать SaveClipboard () после каждой модификации буфера обмена. Все данные будут собраны в ClipboardData

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...