Как разделить международное значение Sql на несколько строк

Чтобы изменить визуальное состояние элемента, вы можете сделать это из кода на странице, например:

VisualStateManager.GoToState(yourViewElement, yourViewElementState);

Однако, не самый лучший совет, но вы можете подписаться изменения в вашей модели представления, из вашего code.behind, а затем вызовите VisualStateManager.

Пример

YourPage()
{
    viewModel.PropertyChanged += FooChanged;
}

public void FooChanged()
{
     if (!args.PropertyName.Equals("YourProperty"))
     {
          VisualStateManager.GoToState(yourViewElement, yourViewElementState);
     }
        return;
}
7
задан Josh Pollard 13 February 2009 в 02:09
поделиться

2 ответа

Это работает просто великолепно, никакая потребность в любых курсорах на этом. Это может быть возможно к fangle что-то без таблицы числа также.

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

create table #splitme (Id int, description varchar(255), quantity int) 
insert #splitme values (1    ,'my desc',          3)
insert #splitme values (2    ,'desc 2',           2)

create table #numbers (num int identity primary key) 
declare @i int 
select @i = max(quantity) from #splitme
while @i > 0
begin   
    insert #numbers default values 
    set @i = @i - 1 
end

select Id, description, 1 from #splitme 
join #numbers on num <= quantity
3
ответ дан 7 December 2019 в 16:46
поделиться
DECLARE @Id INT
DECLARE @Description VARCHAR(32)
DECLARE @Quantity INT
DECLARE @Results TABLE (Id INT, [description] VARCHAR(32), quantity INT)
DECLARE MyCursor CURSOR FOR
    SELECT Id, [description], quantity
    FROM
        MyTable

OPEN MyCursor

FETCH NEXT FROM MyCursor INTO @Id, @Description, @Quantity

WHILE @@FETCH_STATUS = 0
BEGIN
    WHILE @Quantity > 0
    BEGIN
        INSERT INTO @Results (
            Id,
            [description],
            quantity
        ) VALUES (
            @Id,
            @Description,
            1
        )
        SET @Quantity = @Quantity - 1
    END
    FETCH NEXT FROM MyCursor INTO @Id, @Description, @Quantity
END

CLOSE MyCursor
DEALLOCATE MyCursor

SELECT *
FROM
    @Results

Между прочим, курсоры обычно считают злыми. Таким образом, я буду и рекомендовать против чего-то вроде этого и благодарить всех заранее за их провокационные сообщения ;) (Но это должно работать),

0
ответ дан 7 December 2019 в 16:46
поделиться
Другие вопросы по тегам:

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