Есть ли способ получить программный доступ к столбцам раздела детализации ActiveReports?

StackOverflow https://stackoverflow.com/questions/2899521

Вопрос

У меня есть отчет в динамике данных ActiverePorts для .NET. В этом отчете я программно устанавливает свойство столбцов COLANCOUNT раздела детализации в X. Раздел подробной информации имеет один текстовый ящик по билету.

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

Вот код ...

Public Sub RunReport
        Dim count As Integer = 0

        ' ...    get count

        Detail1.ColumnCount = count

        Me.DataSource = ds
        Me.DataMember = ds.Tables(0).TableName

End Sub

Этот код работает нормально, и данные автоматически заполняются в отчете.

Теперь мне нужно изменить отчет и круг или выделить один из предметов, которые автоматически заполняются через столбцы в отчете.

Я не могу найти никакого способа программно доступа к автоматически сгенерированным столбцам, чтобы я мог включить границу, либо нарисовать круг или что-то в этом роде. Любые идеи, как я это сделаю?

Сет

Это было полезно?

Решение

Вы можете включить границу, установив свойства управления в случае формата. Например, если вы хотите установить границу текстового поля, когда его значение меньше нуля, вы можете использовать что-то вроде следующего кода:

 private void detail_Format(object sender, System.EventArgs eArgs)
 {
      if (this.TextBox1.Value < 0) {
           this.TextBox1.Border.BottomColor = System.Drawing.Color.Blue;
           this.TextBox1.Border.BottomStyle = BorderLineStyle.DashDot;
           this.TextBox1.Border.LeftColor = System.Drawing.Color.Blue;
           this.TextBox1.Border.LeftStyle = BorderLineStyle.DashDot;
           this.TextBox1.Border.RightColor = System.Drawing.Color.Blue;
           this.TextBox1.Border.RightStyle = BorderLineStyle.DashDot;
           this.TextBox1.Border.TopColor = System.Drawing.Color.Blue;
           this.TextBox1.Border.TopStyle = BorderLineStyle.DashDot;
      }
 }

Читать здесь Для получения дополнительной информации о недвижимости по границе.

Получение положения контроля на полученной странице не так просто. Вы можете рассчитать позицию на основе некоторых вещей, но я бы порекомендовал использовать самообладание, чтобы выделить данные, которые вы хотите, а не рисунок на странице. Это сделает вашу жизнь проще :)

Если для вас важен форма круга, вы можете использовать элемент управления «Форма» в ActiveReorts, чтобы сделать это, устанавливая его положение и видимость на основе условия. Просто убедитесь, что Z-порядок формы находится под текстовыми коробками. Код для использования формы будет похоже на то, как я структурировал код выше, но вы бы установили верхнюю / левую / ширину / высоту и видимое свойство элемента управления формы вместо установки свойств границ. Больше информации о контроле формы здесь.

Надеюсь это поможет.

 Scott Willeke
 GrapeCity
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top