Murat
Murat
İstanbul-I (Avrupa)
31/03/2014 tarihinden beri üye
90 GY Puanı
45K GY Sırası

Kişisel Sayfaları

İlgi Alanları

2 Rozet
0 Sertifika
1 Soru Sordu
3 Cevap Verdi
0 Blog Yazısı
0 Etiket Takibi

Hakkında

İş Tecrubesi

Kullanıcıya ait İş tecrübesi bilgisi bulunmamaktadır.

Eğitim Geçmişi

Ondokuz Mayıs Üniversitesi
| Aralık 2020 - Aralık 2020

Sertifikalar & Başarılar

GY Sertifikaları (0)
Kullanıcının GY sertifikası bulunmamaktadır.
Diğer Sertifikaları (0)
Kullanıcıya ait sertifika bulunmamaktadır.
Test Sonuçları (0)

Kullanıcıya ait test sonucu bulunmamaktadır.

Dil Becerileri

Son Forum Aktiviteleri

4
Tümünü Gör

MediaElement'e Seekbar nasıl eklerim

Merhaba arkadaşlar ben windows phone 8 üzerinde media uygulaması geliştirmekteyim. MediaElement üzerinde kontroller bulunmadığı için oynattığım medyayı ileri alamıyorum. Bunu kendi içinde olan MediaPlayerLauncher ile yapabiliyorum, fakat MediaElement üzerinde olmuyor. Kendim Slider ekleyip birşeyler yapmaya çalıştım sadece ileri ve geri atlamayı yapabildim ama video oynadıkca Slider'ın ilerlemesini yapamadım yardımcı olursanız sevinirim.

Bu benim Playerım:
Görsel kaldırıldı.

 

Buda istediğim şekilde olan MediaPlayerLauncher:
Görsel kaldırıldı.


Bunlarda kodlarım


Xaml:
[code]
<Grid x:Name="LayoutRoot" Background="Transparent"> <Grid.RowDefinitions> <RowDefinition Height="Auto"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <!--TitlePanel contains the name of the application and page title--> <!--ContentPanel - place additional content here--> <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"> <MediaElement x:Name="player1" MediaOpened="player1_MediaOpened" CurrentStateChanged="player1_CurrentStateChanged" /> <ListBox x:Name="alternatifliste" FontSize="20" FontStyle="Italic" FontWeight="Bold" Foreground="White" Margin="677,98,10,153" SelectionChanged="alternatifliste_SelectionChanged" /> </Grid> <Button x:Name="play" Content="play" HorizontalAlignment="Left" Margin="94,336,0,0" Grid.Row="1" VerticalAlignment="Top" Click="play_Click"/> <Button x:Name="stop" Content="stop" HorizontalAlignment="Left" Margin="331,336,0,0" Grid.Row="1" VerticalAlignment="Top" Click="stop_Click"/> <Slider Name="timelineSlider" Margin="0,68,0,244" Grid.Row="1" ValueChanged="timelineSlider_ValueChanged" /> </Grid>
[/code]

 

Cs:


[code]private void player1_MediaOpened(object sender, RoutedEventArgs e)

{ TimeSpan ts = player1.NaturalDuration.TimeSpan; timelineSlider.Maximum = ts.TotalSeconds; timelineSlider.SmallChange = 1; timelineSlider.LargeChange = Math.Min(10, ts.Seconds / 10); }

private void seekBar_DragCompleted(object sender, DragCompletedEventArgs e)

{

player1.Position = TimeSpan.FromSeconds(timelineSlider.Value);

}

private void timelineSlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)

{

player1.Position = TimeSpan.FromSeconds(timelineSlider.Value);

} private void player1_CurrentStateChanged(object sender, RoutedEventArgs e)

{

Yapmaya çalışıp yapamadığım bölüm(medya oynadıkça sliderın hareket etmesi)

//timelineSlider.Value = player1.Position.Seconds;

}
[/code]

picture-19735-1411940578.png
10 yıl 1 ay önce yanıtladın

MediaElement'e Seekbar nasıl eklerim

picture-19735-1411940578.png
29 Eylül 2014 tarihinde cevaplandı

Kendi soruma kendim cevap vereyim diğer arkadaşlarda faydalansın, bunlar xaml kodları,slider için tasarım kullandım ayrıntılı bilgi burda:http://stackoverflow.com/questions/25915811/how-to-add-mediaelement-seek-bar/25926077#25926077

 

[code] <MediaElement x:Name="player1" MediaOpened="player1_MediaOpened" CurrentStateChanged="player1_CurrentStateChanged_1" />

            <Canvas x:Name="playercontrolcanvas" Margin="0,327,0,0" >
                <Canvas.Background>
                    <SolidColorBrush Color="#FF4B4B4B" Opacity="0.03"/>
                </Canvas.Background>
               

                <Slider x:Name="timelineSlider" Style="{StaticResource Chubs_SliderStyle}" VerticalAlignment="Bottom" ManipulationCompleted="timelineSlider_ManipulationCompleted" Width="800" Canvas.Top="80" >
                    <Slider.Background>
                        <SolidColorBrush Color="#FF1F1F1F" Opacity="0.5"/>
                    </Slider.Background>
                </Slider>
                <TextBlock x:Name="time" Grid.Row="1" TextWrapping="Wrap" Text="00:00" HorizontalAlignment="Left" VerticalAlignment="Top" Canvas.Left="37" Canvas.Top="121">
                    <TextBlock.Foreground>
                        <SolidColorBrush Color="White" Opacity="0.5"/>
                    </TextBlock.Foreground>
                </TextBlock>

            </Canvas>[/code]

 

[code]

 private void player1_MediaOpened(object sender, RoutedEventArgs e)
        {
            TimeSpan ts = player1.NaturalDuration.TimeSpan;
            timelineSlider.Maximum = ts.TotalSeconds;
            timelineSlider.SmallChange = 1;
            timelineSlider.LargeChange = Math.Min(10, ts.Seconds / 10);
            SetupTimer();
        }
        private void seekBar_DragCompleted(object sender, DragCompletedEventArgs e)
        {
            player1.Position = TimeSpan.FromSeconds(timelineSlider.Value);
        }

          
        private DispatcherTimer _timer;

        private void SetupTimer()
        {
            _timer = new DispatcherTimer();
            _timer.Interval = TimeSpan.FromSeconds(0.250);
            StartTimer();
        }
        private bool _sliderpressed = false;
        private void _timer_Tick(object sender, object e)
        {
            if (!_sliderpressed)
            {
                timelineSlider.Value = player1.Position.TotalSeconds;
                TimeSpan t = TimeSpan.FromSeconds(player1.Position.TotalSeconds);
                string suankisure = string.Format("{0:D2}:{1:D2}:{2:D2}",
                t.Hours,
                t.Minutes,
                t.Seconds);
                TimeSpan nd = TimeSpan.FromSeconds(player1.NaturalDuration.TimeSpan.TotalSeconds);
                string toplamsure = string.Format("{0:D2}:{1:D2}:{2:D2}",
                nd.Hours,
                nd.Minutes,
                nd.Seconds);

                time.Text = suankisure + "/" + toplamsure;
            }
        }

        private void StartTimer()
        {
            _timer.Tick += _timer_Tick;
            _timer.Start();
        }

        private void StopTimer()
        {
            _timer.Stop();
            _timer.Tick -= _timer_Tick;
        }

    
          
     

        private void timelineSlider_ManipulationCompleted(object sender, System.Windows.Input.ManipulationCompletedEventArgs e)
        {
            player1.Position = TimeSpan.FromSeconds(timelineSlider.Value);          
        }
        
        private void player1_CurrentStateChanged_1(object sender, RoutedEventArgs e)
        {
           
            if (player1.CurrentState == MediaElementState.Playing)
            {
                if (_sliderpressed)
                {
                    _timer.Stop();
                }
                else
                {
                    _timer.Start();
                }
            }
            else if(player1.CurrentState == MediaElementState.Paused)
            {
                _timer.Stop();
            }
            else if (player1.CurrentState == MediaElementState.Stopped)
            {
                _timer.Stop();
            }
            else if (player1.CurrentState == MediaElementState.Closed)
            {
                _timer.Stop();
            }
        }

[/code]

 

Buda görüntüsü:
Görsel kaldırıldı.

LongListSelector list item erişimi sorunu

picture-19735-1411940578.png
23 Eylül 2014 tarihinde cevaplandı

Merhaba, aynı sorunu bende yaşamıştım ve malesef türkçe kaynaklar yerine yabancı kaynaklar üzerinden çözüm bulabilmiştim. İlk olarak soruyu doğru anladım mı teyit edelim. Senin bir longlistselector'ün var. içinde şu veriler olsun:
A
ali
ayşe
B
Burak

C
Caner
Canan

 

Sen mesela C harfi altında

 olan Canere tıkladın, tıkladığın yerin adını istiyorsun yani "Caner" yazmasını, değil mi?
LonglistSelectorun itemlerini Binding ile girmeniz gerekiyor, yani bir List oluşturup onu LongListSelectorun ItemTemplate'ine static olarak eklemeniz gerekmektedir(ItemTemplate="{StaticResource list1}"), ve item bilgilerini ekleyebileceğiniz bir class oluşturmanız lazım.
Görsel kaldırıldı.
Görsel kaldırıldı.

Görsel kaldırıldı.

Eğer öyleyse ben şu şekilde çözüm buldum:

  • LongListSelectorun SelectionChanged eventini oluşturun

    private async void longlist_SelectionChanged(object sender, SelectionChangedEventArgs e)

    {

    if (longlist.SelectedItem == null)

    return;

    int secilenindex = DiziBilgileriList.IndexOf(dizilonglist.SelectedItem as DiziBilgileri);
    //itemlerin adını dizilistesi isimli listbox içinden alıyordum, burda kaçıncı iteme tıklandığını bulup aynı indexe sahip dizilistesi itemini göstertiyorum:

    MessageBox.Show(dizilistesi.Items[selectedIndex].ToString());
    }

Ben bu şekilde yapıyorum, onun dışında bir örnek dosyası var onu incelemen için yüklüyorum:
http://speedy.sh/5Dbkc/A-zGropedLongListSelectorApp.rar

Turkcell Mobil Veritabanı kullanımı hk.

Aynı soruyu bende soruyorum, veritabanına veri girişi yapıp veri çekme olayını nasıl yapabilirim?