WinForms: каково лучшее управление для GDI + тянущий поверхность?

Как уже упоминали forpas и Russell, начиная с SQL 2017 вы можете использовать функцию STRING_AGG.

Для SQL 2008+ Обратитесь к этому:

Как работают вещи и «Для пути XML» в Sql Server

В вашем случае вы хотите, чтобы разделитель был быть "& amp;" что вызовет проблему с FOR XML PATH из-за специального символа XML. Итак, вы захотите экранировать специальные символы XML, например:

DECLARE @TableA TABLE (Col1 NVARCHAR(10), Col2 INT, Col3 NVARCHAR(10), Col4 

NVARCHAR(10), Col5 INT)

INSERT INTO @TableA (Col1, Col2, Col3, Col4, Col5)
VALUES  ('Dave'     , 24    , 'house'   , 'married'     , 2)
    ,   ('Dave'     , 24    , 'car'     , 'married'     , 2)
    ,   ('Bob'      , 32    , 'House'   , 'single'      , 1)
    ,   ('George'   , 12    , 'house'   , 'divorced'    , 1)

SELECT
        t2.Col1
    ,   t2.Col2
    ,   STUFF   (   (   SELECT '&' + Col3 -- Adding '&' as delimited
                        FROM @TableA t1
                        WHERE t1.Col2 = t2.Col2
                        FOR XML PATH (''), TYPE
                    ).value('.', 'VARCHAR(MAX)'),1,1,''-- To escape special characters
                ) AS Col3
    ,   t2.Col4
FROM @TableA AS t2

GROUP BY    t2.Col1
        ,   t2.Col2
        ,   t2.Col4

9
задан P a u l 31 October 2008 в 21:06
поделиться

2 ответа

Если Вы просто привлечете управление и не разместите детей, то произойдете из Управления - то VS сделает Вас подходящим классом (это называет это 'Пользовательским элементом управления') с обработчиком OnDraw, уже заблокированным в.

Если Вы размещаете другие средства управления в рамках своего управления, то происходите из UserControl, (VS называет это 'Пользовательским элементом управления', и Вы получите поддержку разработчика VS, таким образом, можно будет перетащить вокруг других средств управления на вершине.

Для простого построения диаграммы непрокрутки я произошел бы из Управления.

7
ответ дан 4 December 2019 в 21:52
поделиться

Сделайте свой GDI + тянущий на внеэкранной растровой поверхности и затем блитируйте его к любому управлению, в котором Вы нуждаетесь.

Ваш метод Краски средств управления только должен скопировать поверхность в себя.

2
ответ дан 4 December 2019 в 21:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: