Форум программистов, компьютерный форум, киберфорум
C#: WPF, UWP и Silverlight
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C# WPF Расширение списка воспроизводимых форматов видео в wpf mediaelement Здравствуйте. Я только начал изучать wpf и решил создать видео плеер. Задание основных событий, таких как пауза, стоп и др. вроде бы как понятно. Но, насколько я понял, изначально mediaelement может... Не знаю, только что скормил ему формат .mkv House M.D. в HD качестве... Облизнулся, скушал и ещё попросил... :) От .m2t (видео с камеры в HDV) также ни грамма не отказался... Может быть у Вас... https://www.cyberforum.ru/ wpf-silverlight/ thread443798.html C# WPF ListView - как добавить строку Здравтсвуйте. Сейчас только начинаю изучение wpf и паттерна mvvm. Решил попробовать создать такое приложение: на форме есть две кнопки и ListView. В ListView отображается информация (например... Немного подправил (если честно - сам не разбираюсь во всем этом, но видимо гуглю лучше )))) Тут добавил INotifyPropertyChanged using System; using System.Collections; using... https://www.cyberforum.ru/ wpf-silverlight/ thread443723.html
C# WPF Как добавить к ComboBox и ListBox полосу прокрутки программно
Есть форма на форме есть ComboBox и ListBox. Как прикрутить, т.е. добавить к ComboBox и ListBox полосу прокрутки программно? Зачем? Задай максимальную высоту элемента и полосы прокрутки будут появляться автоматически при большом кол-ве элементов
C# WPF Как добавить в коллекцию List<string> из ListBox несколько элементов Как добавить в коллекцию List из ListBox несколько слов в том случае если вхождения строки содержатся в одной из строк ListBoxa. Т.е. есть textBox куда я ввожу исходную строку. Есть 1 ListBox в... Как добавить в коллекцию List из ListBox несколько слов в том случае если вхождения строки содержатся в одной из строк ListBoxa. Как ни старался, так и не смог понять что именно Вы хотите сделать...... https://www.cyberforum.ru/ wpf-silverlight/ thread443680.html
C# WPF Как отловить событие снятия галочки как во внутренних Checkbox компонента https://www.cyberforum.ru/ wpf-silverlight/ thread442238.html
Есть такой составной компонент,предок которому TREEVIEW,надо обработать события снятия галочки как во внутренних Checkbox так и во внешнем,событие Click скрывает внутренние Checkbox,что... Решил сам,создал свое событие реагирующее на Checkbox Click как внешнего так и внутреннего Checkbox
C# WPF Замена свойства chekbox.Uid из WPF в Sliverlight
Здравствуйте. Переделываю проект из WPF в Sliverlight. Столкнулся с такой проблемой, в проекте WPF есть метод который работает с chekbox и загружает в метод Uid данные о слоях ... Можешь использовать свойство Tag - имеет тип object.
C# WPF Как написать текст полукругом Доброе время суток, мне нужно написать текст полукругом (Lebel или TextBox), как это сделать? если можно то какой нить пример. Башир, посмотри подробный пример на msdn https://www.cyberforum.ru/ wpf-silverlight/ thread443380.html Изменение textblock при вводе строки в textbox C# WPF
Столкнулся с проблемой: Есть пустые textBox и textBlock. Необходимо что бы при вводе строки в textBox, в textBlock появилась некая независимая от textBox строка. написал такое: private void... private void TextBox_TextChanged(object sender, TextChangedEventArgs e) { textBlock1.Text = "%"; } Вы выбрали не то событие для изменения текста.
C# WPF Как переместить каретку ввода в RichTextBox
Есть RichTextBox в который я ввожу текст. Как при вводе текста перемещать каретку, а при удалении не перемещать? Как при вводе текста перемещать каретку, а при удалении не перемещать На msdn-е нашёл.
C# WPF Отрисовка линии на canvas https://www.cyberforum.ru/ wpf-silverlight/ thread442367.html
Только начинаю работать с wpf. Мне нужно создать usercontrol линию на canvas. Рисую линию таким образом: Line MyLine = new Line(); MyLine.X1 = 1;// BeginPoint.X; ... А Canvas-то добавили на MainWindow? Me.AddChild(t) Либо, если у Вас там Grid, то вначале присвойте гриду имя, например "myGrid", а затем добавьте строчку: myGrid.Children.Add(t)
C# WPF Как изменить свойство объекта, который расположен в окне WPF, из страницы WPF (page) Всем привет! Как изменить свойство объекта, который расположен в окне WPF, из страницы WPF (page). Спасибо! https://www.cyberforum.ru/ wpf-silverlight/ thread443073.html C# WPF При вводе значения идет разбивка числа на разряды, а курсор перемещается влево Всем привет. Использую тут StringFormat для отображения числа как "денежку". <DataGridTextColumn Binding="{Binding Path=Income, Mode=TwoWay, ... Может тогда кто-нибудь подскажет вариант "обхода"? Например, чтобы когда редактируешь StringFormat "не работал", а когда редактирование заканчиваешь - "работал" https://www.cyberforum.ru/ wpf-silverlight/ thread442838.html
 Аватар для kbu
2 / 2 / 1
Регистрация: 30.07.2010
Сообщений: 76
0

Как из одного ControlTemplate получить доступ к другому ComtrolTemplate - C# WPF - Ответ 2477335

10.02.2012, 18:49. Показов 981. Ответов 0
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Подскажите пожалуйста, как из одного ControlTemplate получить доступ к другому ComtrolTemplate.

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

Вот мои наброски:


XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
<Window x:Class="examWPF2.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="486" Width="663">
    <Grid>
        <Grid.Resources>
        <ControlTemplate x:Key="buttonTemplate" TargetType="{x:Type Button}">
                <Grid>
                    <Ellipse x:Name="outerCircle" Width="{TemplateBinding Button.Width}" Height="{TemplateBinding Button.Height}">
                        <Ellipse.Fill>
                            <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
                                <GradientStop Offset="0" Color="Blue"/>
                                <GradientStop Offset="1" Color="Red"/>
                            </LinearGradientBrush>
                        </Ellipse.Fill>
                    </Ellipse>
                    
                    <ContentPresenter Width="{TemplateBinding Button.Width}" Height="{TemplateBinding Button.Height}"  HorizontalAlignment="Center" VerticalAlignment="Center" Content="{TemplateBinding Button.Content}">
                    <ContentPresenter.RenderTransformOrigin>
                        <Point X="0.5" Y="0.5"/>
                    </ContentPresenter.RenderTransformOrigin>
 
                    <ContentPresenter.RenderTransform>
 
                        <TransformGroup>
                            <ScaleTransform ScaleX="0.9" ScaleY="0.9"/>
                            <TranslateTransform X="33" Y="50"></TranslateTransform>
                        </TransformGroup>
                    </ContentPresenter.RenderTransform>
                </ContentPresenter>
            </Grid>
 
            <ControlTemplate.Triggers>
 
 
                    <EventTrigger RoutedEvent="Button.MouseEnter">
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimation Storyboard.TargetName="st1"
                                                 Storyboard.TargetProperty="X"
                                                 To="150" Duration="0:0:0.5"/>
                            </Storyboard>
                        </BeginStoryboard>
                    </EventTrigger>
 
                    <Trigger Property="Button.IsPressed" Value="True">
                    <Setter Property="RenderTransform">
                        <Setter.Value>
                            <ScaleTransform ScaleX=".9" ScaleY=".9"/>
                        </Setter.Value>
                    </Setter>
                    <Setter Property="RenderTransformOrigin" Value=".5,.5"/>
                </Trigger>
 
            </ControlTemplate.Triggers>
 
        </ControlTemplate>
 
            <ControlTemplate x:Key="buttonTemplate1" TargetType="{x:Type Button}">
                <Grid>
 
                    <Ellipse x:Name="innerCircle1" Width="{TemplateBinding Button.Width}" Height="{TemplateBinding Button.Height}">
 
                        <Ellipse.RenderTransformOrigin>
                            <Point X="0.5" Y="0.5"/>
                        </Ellipse.RenderTransformOrigin>
 
                        <Ellipse.RenderTransform>
                            <TransformGroup>
                                <ScaleTransform ScaleX="0.8" ScaleY="0.8"/>
                                <TranslateTransform x:Name="st1" X="1" Y="0"/>
                            </TransformGroup>
                        </Ellipse.RenderTransform>
                        <Ellipse.Fill>
                            <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
                                <GradientStop Offset="0" Color="Black"/>
                                <GradientStop Offset="1" Color="Transparent"/>
                            </LinearGradientBrush>
                        </Ellipse.Fill>
                    </Ellipse>
 
                    <ContentPresenter Width="{TemplateBinding Button.Width}" Height="{TemplateBinding Button.Height}"  HorizontalAlignment="Center" VerticalAlignment="Center" Content="{TemplateBinding Button.Content}">
                        <ContentPresenter.RenderTransformOrigin>
                            <Point X="0.5" Y="0.5"/>
                        </ContentPresenter.RenderTransformOrigin>
 
                        <ContentPresenter.RenderTransform>
 
                            <TransformGroup>
                                <ScaleTransform ScaleX="0.9" ScaleY="0.9"/>
                                <TranslateTransform X="27" Y="45"></TranslateTransform>
                            </TransformGroup>
                        </ContentPresenter.RenderTransform>
                    </ContentPresenter>
                </Grid>
 
                <ControlTemplate.Triggers>
 
                    <Trigger Property="Button.IsPressed" Value="True">
                        <Setter Property="RenderTransform">
                            <Setter.Value>
                                <ScaleTransform ScaleX=".9" ScaleY=".9"/>
                            </Setter.Value>
                        </Setter>
                        <Setter Property="RenderTransformOrigin" Value=".5,.5"/>
                    </Trigger>
 
                </ControlTemplate.Triggers>
 
            </ControlTemplate>
 
 
 
        </Grid.Resources>
 
        <Button Tag="pic1.jpg" Template="{StaticResource buttonTemplate}" FontSize="20" Margin="240,170,0,0" HorizontalAlignment="Left" Width="148" Background="Beige" Height="131" VerticalAlignment="Top">
            PUSH ME
        </Button>
        <Button Tag="pic1.jpg" Template="{StaticResource buttonTemplate1}" FontSize="20" Margin="240,175,0,0" HorizontalAlignment="Left" Width="138"  Height="121" VerticalAlignment="Top">
            PUSH ME
        </Button>
    </Grid>
</Window>
Добавлено через 1 час 45 минут
Попробовал сделать вот так:

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
<Window x:Class="examWPF2.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="486" Width="663">
    <Grid>
        <Grid.Resources>
            
            <Storyboard x:Key="test">
                <DoubleAnimation Storyboard.TargetName="BUT"
                                                 Storyboard.TargetProperty="X"
                                                 To="150" Duration="0:0:0.5"/>
            </Storyboard>
            
            <ControlTemplate x:Key="buttonTemplate" TargetType="{x:Type Button}">
                <Grid>
                    <Ellipse x:Name="outerCircle" Width="{TemplateBinding Button.Width}" Height="{TemplateBinding Button.Height}">
                        <Ellipse.Fill>
                            <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
                                <GradientStop Offset="0" Color="Blue"/>
                                <GradientStop Offset="1" Color="Red"/>
                            </LinearGradientBrush>
                        </Ellipse.Fill>
                    </Ellipse>
                    
                    <ContentPresenter Width="{TemplateBinding Button.Width}" Height="{TemplateBinding Button.Height}"  HorizontalAlignment="Center" VerticalAlignment="Center" Content="{TemplateBinding Button.Content}">
                    <ContentPresenter.RenderTransformOrigin>
                        <Point X="0.5" Y="0.5"/>
                    </ContentPresenter.RenderTransformOrigin>
 
                    <ContentPresenter.RenderTransform>
 
                        <TransformGroup>
                            <ScaleTransform ScaleX="0.9" ScaleY="0.9"/>
                            <TranslateTransform X="33" Y="50"></TranslateTransform>
                        </TransformGroup>
                    </ContentPresenter.RenderTransform>
                </ContentPresenter>
            </Grid>
 
            <ControlTemplate.Triggers>
 
                    <EventTrigger RoutedEvent="Button.MouseEnter">
                        <BeginStoryboard Storyboard="{StaticResource test}"/>
                    </EventTrigger>
                
                    <Trigger Property="Button.IsPressed" Value="True">
                    <Setter Property="RenderTransform">
                        <Setter.Value>
                            <ScaleTransform ScaleX=".9" ScaleY=".9"/>
                        </Setter.Value>
                    </Setter>
                    <Setter Property="RenderTransformOrigin" Value=".5,.5"/>
                </Trigger>
 
            </ControlTemplate.Triggers>
 
        </ControlTemplate>
 
            <ControlTemplate x:Key="buttonTemplate1" TargetType="{x:Type Button}">
                <Grid>
 
                    <Ellipse x:Name="innerCircle1" Width="{TemplateBinding Button.Width}" Height="{TemplateBinding Button.Height}">
 
                        <Ellipse.RenderTransformOrigin>
                            <Point X="0.5" Y="0.5"/>
                        </Ellipse.RenderTransformOrigin>
 
                        <Ellipse.RenderTransform>
                            <TransformGroup>
                                <ScaleTransform ScaleX="0.8" ScaleY="0.8"/>
                                <TranslateTransform x:Name="BUT" X="1" Y="0"/>
                            </TransformGroup>
                        </Ellipse.RenderTransform>
                        <Ellipse.Fill>
                            <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
                                <GradientStop Offset="0" Color="Black"/>
                                <GradientStop Offset="1" Color="Transparent"/>
                            </LinearGradientBrush>
                        </Ellipse.Fill>
                    </Ellipse>
 
                    <ContentPresenter Width="{TemplateBinding Button.Width}" Height="{TemplateBinding Button.Height}"  HorizontalAlignment="Center" VerticalAlignment="Center" Content="{TemplateBinding Button.Content}">
                        <ContentPresenter.RenderTransformOrigin>
                            <Point X="0.5" Y="0.5"/>
                        </ContentPresenter.RenderTransformOrigin>
 
                        <ContentPresenter.RenderTransform>
 
                            <TransformGroup>
                                <ScaleTransform ScaleX="0.9" ScaleY="0.9"/>
                                <TranslateTransform X="27" Y="45"></TranslateTransform>
                            </TransformGroup>
                        </ContentPresenter.RenderTransform>
                    </ContentPresenter>
                </Grid>
 
                <ControlTemplate.Triggers>
 
                    <Trigger Property="Button.IsPressed" Value="True">
                        <Setter Property="RenderTransform">
                            <Setter.Value>
                                <ScaleTransform ScaleX=".9" ScaleY=".9"/>
                            </Setter.Value>
                        </Setter>
                        <Setter Property="RenderTransformOrigin" Value=".5,.5"/>
                    </Trigger>
 
                </ControlTemplate.Triggers>
 
            </ControlTemplate>
 
 
 
        </Grid.Resources>
 
        <Button Template="{StaticResource buttonTemplate}" FontSize="20" Margin="240,170,0,0" HorizontalAlignment="Left" Width="148" Background="Beige" Height="131" VerticalAlignment="Top">
            PUSH ME
        </Button>
        <Button Template="{StaticResource buttonTemplate1}" FontSize="20" Margin="96,52,0,0" HorizontalAlignment="Left" Width="138"  Height="121" VerticalAlignment="Top">
            PUSH ME
        </Button>
    </Grid>
</Window>
по идее должно получиться,но при наведении мыши на центральную кнопку программа вылетает

Добавлено через 19 минут
И второй код работает, но только если сторибоард цеплять ко второй кнопке(маленькой), а вот чтобы работать перекрестно...не хочет..

Добавлено через 58 минут
неужели никто не знает, как сделать,чтобы при наведении на большую кнопку из нее выползала маленькая?

Вернуться к обсуждению:
Как из одного ControlTemplate получить доступ к другому ComtrolTemplate C# WPF
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.02.2012, 18:49
Готовые ответы и решения:

Как из одного класса получить доступ к другому
Нужна подсказка новичку. Начал изучить C#. Тренируюсь в Visual Studio 2008. Создал два файла *.cs внутри одного проекта (то есть два...

Как получить доступ к другому классу из .Net Remoting
Здравствуйте! Пример ситуации: есть класс А, который я используя для .Net Remoting и форма (класс Form1). Как мне через метод класса А...

Получить доступ к другому потоку
В классе 1 есть поток, из этого класса запускается функция 2 класса у которой все действия выполняются тоже в отдельном потоке. 1 класс...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.02.2012, 18:49
Помогаю со студенческими работами здесь

TL-SG5428 как получить доступ с одного VLAN10 в VLAN20
Доброе время суток! по наследству достались два управляемых коммутатора TL-SG5428 второго уровня. он не был настроен, никогда до этого не...

Как получить доступ к переменным одного класса из методов другого
Есть класс MainWindow с переменными в pablic, и кьютешный QGraphicsView. Нужно вот тут void QGraphicsView::mouseMoveEvent(QMouseEvent*...

Как получить доступ к переменной находящейся в одном методе из другого метода в пределах одного класса
Привет всем! Очередной вопрос новичка, допустим, у меня есть метод 1, в котором назначена переменная, и метод 2 в этом же классе,...

Не получается получить доступ из одного VLAN в другой
У меня не получается получить доступ из одного VLAN в другой. Из 10 в 20-ый и наоборот. Подскажите что не так...

Как обращаться из одного скрипта к другому? Unity2D
Надо открыть панель - DiePanel.SetActive(true); Но пишет: Assets\Scripts\Player.cs(96,4): error CS0103: The name 'DiePanel' does not...

0
Новые блоги и статьи
Безопасность кластеров Apache Kafka
Javaican 14.03.2025
Apache Kafka стал одним из ключевых компонентов современных архитектур, обрабатывающих потоки данных в режиме реального времени. Его используют тысячи компаний от стартапов до технологических. . .
Контейнеризация ML моделей с помощью Docker и Kubernetes
Mr. Docker 14.03.2025
Перенос ML-моделей из лаборатории в продакшн сопровождается целым комплексом проблем. Нередко код, который отлично работает на локальной машине, отказывается функционировать в промышленной среде. . . .
Организация масштабируемого хранилища с Apache Cassandra
Codd 14.03.2025
Изначально разработанная в Facebook, а затем переданная Apache Software Foundation, Cassandra сочетает в себе принципы Amazon's Dynamo и Google's BigTable. Эта комбинация создает уникальную. . .
Kafka или Pulsar: Что лучше для потоковой обработки в Java
Javaican 14.03.2025
Среди множества решений для потоковой обработки данных Apache Kafka долгое время удерживала лидирующие позиции, став де-факто стандартом в индустрии. Однако в последние годы всё больше внимания. . .
Создание и использование компонентов в Vue 3
Reangularity 14.03.2025
Компонент в Vue - это автономный блок интерфейса, который содержит собственную разметку, логику и стили. Представьте себе кнопку, форму ввода или даже целую панель навигации - всё это можно оформить. . .
Vue 3: Создаем современное веб-приложение с Composition API
Reangularity 14.03.2025
В фронтенд-разработке Vue 3 выделяется своим прагматичным подходом. В отличие от React с его минималистичной философией "всё — JavaScript" или Angular с его всеобъемлющим корпоративным подходом, Vue. . .
Разработка контекстных меню в iOS
mobDevWorks 14.03.2025
С приходом iOS 13 Apple представила новый API для контекстных меню, который полностью заменил предыдущую технологию 3D Touch peek & pop. Хотя многие разработчики и пользователи испытывают ностальгию. . .
Лучшие практики оптимизации Docker Image
Mr. Docker 13.03.2025
Размер Docker-образа влияет на множество аспектов работы с контейнерами. Чем больше образ, тем дольше его загрузка в реестр и выгрузка из него. Для команд разработки, работающих с CI/ CD пайплайнами,. . .
Вопросы на собеседовании по Docker
Mr. Docker 13.03.2025
Ты сидишь напротив технического специалиста, и вдруг звучит вопрос про Docker Swarm или многоэтапные сборки. Пот на лбу? Не переживай, после этой статьи ты будешь готов ко всему! Эта статья будет. . .
Поиск текста в сносках : замена дефиса на тире или тире на дефис...
РоΜа 13.03.2025
Нужно было найти текст в сносках и заменить. Почему-то метод селекшн не сработал. . . пришлось гуглить. найденный на форумвба код пришлось править. Смысл - заменяет в сносках дефисы и тире на нужные. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru