1

自動スクロールListBoxを必要とするクライアントがいて、Selected Item. 青いバーの意味は次のとおりです...:

選択バー

…「Task4」の上にあるあの青いバー。

私はそれを削除する次のようなコードを見てきました:

private void listBox1_DrawItem(object sender, DrawItemEventArgs e)
{
    e.DrawBackground();

    bool isItemSelected = ((e.State & DrawItemState.Selected) == DrawItemState.Selected);
    int itemIndex = e.Index;
    if (itemIndex >= 0 && itemIndex < listBox1.Items.Count)
    {
        Graphics g = e.Graphics;

        // Background Color
        SolidBrush backgroundColorBrush = new SolidBrush((isItemSelected) ? Color.Red : Color.White);
        g.FillRectangle(backgroundColorBrush, e.Bounds);

        // Set text color
        string itemText = listBox1.Items[itemIndex].ToString();

        SolidBrush itemTextColorBrush = (isItemSelected) ? new SolidBrush(Color.White) : new SolidBrush(Color.Black);
        g.DrawString(itemText, e.Font, itemTextColorBrush, listBox1.GetItemRectangle(itemIndex).Location);

        // Clean up
        backgroundColorBrush.Dispose();
        itemTextColorBrush.Dispose();
    }

    e.DrawFocusRectangle();
}

しかし、私は選択イベントを で実行しているため、そのコードは機能しませTimerん。e.whateverTimer

これが私のコードですTimer

int ii = 0;
int i = 1;
private void timer1_Tick(object sender, EventArgs e)
{
    ii = LstBxTaskList.Items.Count;
    if (i == ii)
    {
        i = 0;
        LstBxTaskList.SelectedIndex = 0;
    }
    LstBxTaskList.SelectedIndex = i;
    i++;
}

そして、そのコードはSelected Itemのリストを実行しItemsます。

ありがとう。

4

2 に答える 2