Basamaklı Stil Sayfaları kullanan stil uygulamaları
.NET Çok Platformlu Uygulama Kullanıcı Arabirimi (.NET MAUI) uygulamaları, Basamaklı Stil Sayfaları (CSS) kullanılarak stillendirilebilir. Stil sayfası, her kural bir veya daha fazla seçiciden ve bildirim bloğundan oluşan bir kural listesinden oluşur. Bildirim bloğu, her bildirimin bir özellik, iki nokta üst üste ve bir değerden oluşan küme ayraçlarındaki bildirimlerin bir listesinden oluşur. Bir blokta birden çok bildirim olduğunda, ayırıcı olarak noktalı virgül eklenir.
Aşağıdaki örnekte bazı .NET MAUI uyumlu CSS gösterilmektedir:
navigationpage {
-maui-bar-background-color: lightgray;
}
^contentpage {
background-color: lightgray;
}
#listView {
background-color: lightgray;
}
stacklayout {
margin: 20;
-maui-spacing: 6;
}
grid {
row-gap: 6;
column-gap: 6;
}
.mainPageTitle {
font-style: bold;
font-size: 14;
}
.mainPageSubtitle {
margin-top: 15;
}
.detailPageTitle {
font-style: bold;
font-size: 14;
text-align: center;
}
.detailPageSubtitle {
text-align: center;
font-style: italic;
}
listview image {
height: 60;
width: 60;
}
stacklayout>image {
height: 200;
width: 200;
}
.NET MAUI'de CSS stil sayfaları derleme zamanı yerine çalışma zamanında ayrıştırılır ve değerlendirilir ve stil sayfaları kullanımda yeniden ayrıştırılır.
Önemli
CSS kullanarak bir .NET MAUI uygulamasına tam stil uygulamak mümkün değildir. Ancak, CSS'yi desteklemek için XAML stilleri kullanılabilir. XAML stilleri hakkında daha fazla bilgi için bkz . XAML kullanan stil uygulamaları.
Stil sayfası kullanma
.NET MAUI uygulamasına stil sayfası ekleme işlemi aşağıdaki gibidir:
- .NET MAUI uygulama projenize boş bir CSS dosyası ekleyin. CSS dosyası herhangi bir klasöre yerleştirilebilir ve Kaynaklar klasörü önerilen konumdur.
- CSS dosyasının derleme eylemini MauiCss olarak ayarlayın.
Stil sayfası yükleme
Stil sayfası yüklemek için kullanılabilecek bir dizi yaklaşım vardır.
Dekont
Çalışma zamanında stil sayfasını değiştirmek ve yeni stil sayfasının uygulanmasını sağlamak mümkün değildir.
XAML'de stil sayfası yükleme
Stil sayfası bir öğesine eklenmeden StyleSheet
ResourceDictionaryönce sınıfıyla yüklenebilir ve ayrıştırılabilir:
<Application ...>
<Application.Resources>
<StyleSheet Source="/Resources/styles.css" />
</Application.Resources>
</Application>
StyleSheet.Source
özelliği stil sayfasını kapsayan XAML dosyasının konumuna göre URI olarak veya URI ile /
başlıyorsa proje köküne göre belirtir.
Uyarı
Derleme eylemi MauiCss olarak ayarlanmadıysa CSS dosyası yüklenemiyor.
Alternatif olarak, bir stil sayfası bir bölüm içinde çizilerek CDATA
bir öğesine ResourceDictionaryeklenmeden StyleSheet
önce sınıfıyla yüklenebilir ve ayrıştırılabilir:
<ContentPage ...>
<ContentPage.Resources>
<StyleSheet>
<![CDATA[
^contentpage {
background-color: lightgray;
}
]]>
</StyleSheet>
</ContentPage.Resources>
...
</ContentPage>
Kaynak sözlükleri hakkında daha fazla bilgi için bkz . Kaynak sözlükleri.
C'de stil sayfası yükleme#
C# dilinde, bir stil sayfası'ndan StringReader
yüklenebilir ve öğesine ResourceDictionaryeklenebilir:
using Microsoft.Maui.Controls.StyleSheets;
public partial class MyPage : ContentPage
{
public MyPage()
{
InitializeComponent();
using (var reader = new StringReader("^contentpage { background-color: lightgray; }"))
{
this.Resources.Add(StyleSheet.FromReader(reader));
}
}
}
yönteminin StyleSheet.FromReader
bağımsız değişkeni, stil sayfasını okuyan değişkendir TextReader
.
Öğeleri seçme ve özellikleri uygulama
CSS, hangi öğelerin hedefleneceğini belirlemek için seçicileri kullanır. Eşleşen seçicilere sahip stiller, tanım sırasına göre art arda uygulanır. Belirli bir öğede tanımlanan stiller her zaman en son uygulanır. Desteklenen seçiciler hakkında daha fazla bilgi için bkz . Seçici başvurusu.
CSS, seçili öğeye stil eklemek için özellikleri kullanır. Her özelliğin bir dizi olası değeri vardır ve bazı özellikler herhangi bir öğe türünü etkileyebilirken, diğerleri öğe gruplarına uygulanır. Desteklenen özellikler hakkında daha fazla bilgi için bkz . Özellik başvurusu.
Alt stil sayfaları, aynı özellikleri ayarlarsa her zaman üst stil sayfalarını geçersiz kılar. Bu nedenle, aynı özellikleri ayarlayan stiller uygulanırken aşağıdaki öncelik kurallarına uyulur:
- Uygulama kaynaklarında tanımlanan bir stilin üzerine sayfa kaynaklarında tanımlanan bir stil (aynı özellikleri ayarlarlarsa) yazılır.
- Aynı özellikleri ayarlarlarsa, sayfa kaynaklarında tanımlanan stilin üzerine denetim kaynaklarında tanımlanan bir stil yazılır.
- Uygulama kaynaklarında tanımlanan bir stilin üzerine denetim kaynaklarında tanımlanan bir stil (aynı özellikleri ayarlarlarsa) yazılır.
Dekont
CSS değişkenleri desteklenmiyor.
Türe göre öğe seçme
Görsel ağaçtaki öğeler büyük/küçük harfe duyarsız element
seçici ile türe göre seçilebilir:
stacklayout {
margin: 20;
}
Bu seçici, sayfalardaki stil sayfasını kullanan tüm StackLayout öğeleri tanımlar ve kenar boşluklarını 20 tekdüzen kalınlıkta ayarlar.
Dekont
Seçici, element
belirtilen türün alt sınıflarını tanımlamaz.
Temel sınıfa göre öğeleri seçme
Görsel ağaçtaki öğeler, büyük/küçük harfe duyarsız ^base
seçici ile temel sınıf tarafından seçilebilir:
^contentpage {
background-color: lightgray;
}
Bu seçici, stil sayfasını kullanan tüm ContentPage öğeleri tanımlar ve arka plan renklerini olarak lightgray
ayarlar.
Dekont
Seçici ^base
.NET MAUI'ye özgüdür ve CSS belirtiminin bir parçası değildir.
Ada göre öğe seçme
Görsel ağaçtaki tek tek öğeler büyük/küçük harfe duyarlı #id
seçici ile seçilebilir:
#listView {
background-color: lightgray;
}
Bu seçici özelliği olarak listView
ayarlanmış öğesini StyleId
tanımlar. Ancak özelliği ayarlanmazsa StyleId
seçici öğesinin kullanımına x:Name
geri döner. Bu nedenle, aşağıdaki örnekte seçici, #listView
özniteliği olarak ayarlanmış listView
olan x:Name
öğesini tanımlar ListView ve arka plan rengini olarak lightgray
ayarlar.
<ContentPage ...>
<ContentPage.Resources>
<StyleSheet Source="/Resources/styles.css" />
</ContentPage.Resources>
<StackLayout>
<ListView x:Name="listView">
...
</ListView>
</StackLayout>
</ContentPage>
Belirli bir sınıf özniteliğine sahip öğeleri seçme
Büyük/küçük harfe duyarlı .class
seçici ile belirli bir sınıf özniteliğine sahip öğeler seçilebilir:
.detailPageTitle {
font-style: bold;
font-size: 14;
text-align: center;
}
.detailPageSubtitle {
text-align: center;
font-style: italic;
}
CSS sınıfı, öğesinin özelliği CSS sınıf adı olarak ayarlanarak StyleClass
bir XAML öğesine atanabilir. Bu nedenle, aşağıdaki örnekte sınıfı tarafından .detailPageTitle
tanımlanan stiller ilk Labelöğesine atanırken, sınıfı tarafından .detailPageSubtitle
tanımlanan stiller ikinci Labelöğesine atanır.
<ContentPage ...>
<ContentPage.Resources>
<StyleSheet Source="/Resources/styles.css" />
</ContentPage.Resources>
<ScrollView>
<StackLayout>
<Label ... StyleClass="detailPageTitle" />
<Label ... StyleClass="detailPageSubtitle"/>
</StackLayout>
</ScrollView>
</ContentPage>
Alt öğeleri seçme
Görsel ağaçtaki alt öğeler büyük/küçük harfe duyarsız element element
seçici ile seçilebilir:
listview image {
height: 60;
width: 60;
}
Bu seçici, öğelerin alt ListView öğesi olan tüm Image öğeleri tanımlar ve yükseklik ve genişliklerini 60 olarak ayarlar. Bu nedenle, aşağıdaki XAML örneğinde seçici listview image
, öğesinin Image alt öğesini ListViewtanımlar ve yükseklik ve genişliğini 60 olarak ayarlar.
<ContentPage ...>
<ContentPage.Resources>
<StyleSheet Source="/Resources/styles.css" />
</ContentPage.Resources>
<StackLayout>
<ListView ...>
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid>
...
<Image ... />
...
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</StackLayout>
</ContentPage>
Dekont
Seçici, element element
alt öğenin üst öğenin doğrudan alt öğesi olmasını gerektirmez; alt öğenin farklı bir üst öğesi olabilir. Bir üst öğenin belirtilen ilk öğe olması koşuluyla seçim gerçekleşir.
Doğrudan alt öğeleri seçme
Görsel ağaçtaki doğrudan alt öğeler büyük/küçük harfe duyarsız element>element
seçici ile seçilebilir:
stacklayout>image {
height: 200;
width: 200;
}
Bu seçici, öğelerin doğrudan alt öğeleri StackLayout olan tüm Image öğeleri tanımlar ve boy ve genişliklerini 200 olarak ayarlar. Bu nedenle, aşağıdaki örnekte seçici stacklayout>image
, öğesinin Image doğrudan alt öğesi StackLayoutolduğunu belirler ve yükseklik ve genişliğini 200 olarak ayarlar.
<ContentPage ...>
<ContentPage.Resources>
<StyleSheet Source="/Resources/styles.css" />
</ContentPage.Resources>
<ScrollView>
<StackLayout>
...
<Image ... />
...
</StackLayout>
</ScrollView>
</ContentPage>
Dekont
Seçici, element>element
alt öğenin üst öğenin doğrudan alt öğesi olmasını gerektirir.
Seçici başvurusu
Aşağıdaki CSS seçicileri .NET MAUI tarafından desteklenir:
Seçici | Örnek | Açıklama |
---|---|---|
.class |
.header |
'header' içeren özelliğine StyleClass sahip tüm öğeleri seçer. Bu seçici büyük/küçük harfe duyarlıdır. |
#id |
#email |
olarak ayarlanmış email tüm öğeleri StyleId seçer. Ayarlanmadıysa StyleId geri dönüş olarak x:Name ayarlayın. XAML kullanılırken yerine x:Name tercih StyleId edilir. Bu seçici büyük/küçük harfe duyarlıdır. |
* |
* |
Tüm öğeleri seçer. |
element |
label |
türüne Labelait tüm öğeleri seçer, ancak alt sınıfları seçmez. Bu seçici büyük/küçük harfe duyarsız. |
^base |
^contentpage |
kendi dahil olmak üzere ContentPage temel sınıf olarak ile ContentPage tüm öğeleri seçer. Bu seçici büyük/küçük harfe duyarsızdır ve CSS belirtiminin bir parçası değildir. |
element,element |
label,button |
Tüm öğeleri ve tüm ButtonLabel öğeleri seçer. Bu seçici büyük/küçük harfe duyarsız. |
element element |
stacklayout label |
içindeki StackLayouttüm Label öğeleri seçer. Bu seçici büyük/küçük harfe duyarsız. |
element>element |
stacklayout>label |
ile tüm LabelStackLayout öğeleri doğrudan üst öğe olarak seçer. Bu seçici büyük/küçük harfe duyarsız. |
element+element |
label+entry |
Bir öğesinin hemen ardından Labeltüm Entry öğeleri seçer. Bu seçici büyük/küçük harfe duyarsız. |
element~element |
label~entry |
öncesinde bir Labelolan tüm Entry öğeleri seçer. Bu seçici büyük/küçük harfe duyarsız. |
Eşleşen seçicilere sahip stiller, tanım sırasına göre art arda uygulanır. Belirli bir öğede tanımlanan stiller her zaman en son uygulanır.
Bahşiş
Seçiciler gibi sınırlama StackLayout>ContentView>label.email
olmadan birleştirilebilir.
Aşağıdaki seçiciler desteklenmez:
[attribute]
@media
ve@supports
:
ve::
Dekont
Özgüllük ve özgüllük geçersiz kılmaları desteklenmez.
Özellik başvurusu
Aşağıdaki CSS özellikleri .NET MAUI tarafından desteklenir (Değerler sütununda türler italikken, dize değişmez değerleri şunlardırgray
):
Özellik | Şunlara uygulanır | Değerler | Örnek |
---|---|---|---|
align-content |
FlexLayout | stretch | center | start | end | spacebetween | spacearound | spaceevenly | flex-start | flex-end | space-between | space-around | initial |
align-content: space-between; |
align-items |
FlexLayout | stretch | center | start | end | flex-start | flex-end | initial |
align-items: flex-start; |
align-self |
VisualElement | auto | stretch | center | start | end | flex-start | flex-end | initial |
align-self: flex-end; |
background-color |
VisualElement | Renk | initial |
background-color: springgreen; |
background-image |
Page | string | initial |
background-image: bg.png; |
border-color |
Button, Frame, ImageButton | Renk | initial |
border-color: #9acd32; |
border-radius |
BoxView, Button, Frame, ImageButton | double | initial |
border-radius: 10; |
border-width |
Button, ImageButton | double | initial |
border-width: .5; |
color |
ActivityIndicator, , Button, , CheckBox, DatePicker, Editor, , Entry, Label, ProgressBarPicker, SwitchSearchBar, BoxViewTimePicker | Renk | initial |
color: rgba(255, 0, 0, 0.3); |
column-gap |
Grid | double | initial |
column-gap: 9; |
direction |
VisualElement | ltr | rtl | inherit | initial |
direction: rtl; |
flex-direction |
FlexLayout | column | columnreverse | row | rowreverse | row-reverse | column-reverse | initial |
flex-direction: column-reverse; |
flex-basis |
VisualElement | kaydırarak seçininitial | auto | . Ayrıca, %0 ile %100 aralığındaki bir yüzde işaretiyle % belirtilebilir. |
flex-basis: 25%; |
flex-grow |
VisualElement | float | initial |
flex-grow: 1.5; |
flex-shrink |
VisualElement | float | initial |
flex-shrink: 1; |
flex-wrap |
VisualElement | nowrap | wrap | reverse | wrap-reverse | initial |
flex-wrap: wrap-reverse; |
font-family |
Button, DatePicker, Editor, , Entry, Label, Picker, SearchBar, TimePicker, Span | string | initial |
font-family: Consolas; |
font-size |
Button, DatePicker, Editor, , Entry, Label, Picker, SearchBar, TimePicker, Span | double | initial |
font-size: 12; |
font-style |
Button, DatePicker, Editor, , Entry, Label, Picker, SearchBar, TimePicker, Span | bold | italic | initial |
font-style: bold; |
height |
VisualElement | double | initial |
height: 250; |
justify-content |
FlexLayout | start | center | end | spacebetween | spacearound | spaceevenly | flex-start | flex-end | space-between | space-around | initial |
justify-content: flex-end; |
letter-spacing |
Button, , EditorDatePicker, , Entry, Label, Picker, SearchBar, SearchHandler, Span,TimePicker | double | initial |
letter-spacing: 2.5; |
line-height |
Label, Span | double | initial |
line-height: 1.8; |
margin |
View | Kalın -lığı | initial |
margin: 6 12; |
margin-left |
View | Kalın -lığı | initial |
margin-left: 3; |
margin-top |
View | Kalın -lığı | initial |
margin-top: 2; |
margin-right |
View | Kalın -lığı | initial |
margin-right: 1; |
margin-bottom |
View | Kalın -lığı | initial |
margin-bottom: 6; |
max-lines |
Label | int | initial |
max-lines: 2; |
min-height |
VisualElement | double | initial |
min-height: 50; |
min-width |
VisualElement | double | initial |
min-width: 112; |
opacity |
VisualElement | double | initial |
opacity: .3; |
order |
VisualElement | int | initial |
order: -1; |
padding |
Button, ImageButton, Layout, Page | Kalın -lığı | initial |
padding: 6 12 12; |
padding-left |
Button, ImageButton, Layout, Page | double | initial |
padding-left: 3; |
padding-top |
Button, ImageButton, Layout, Page | double | initial |
padding-top: 4; |
padding-right |
Button, ImageButton, Layout, Page | double | initial |
padding-right: 2; |
padding-bottom |
Button, ImageButton, Layout, Page | double | initial |
padding-bottom: 6; |
position |
FlexLayout | relative | absolute | initial |
position: absolute; |
row-gap |
Grid | double | initial |
row-gap: 12; |
text-align |
Entry, EntryCell, Label, SearchBar | left | top | right | bottom | start | center | middle | end | initial . left ve right sağdan sola ortamlarda kaçınılmalıdır. |
text-align: right; |
text-decoration |
Label, Span | none | underline | strikethrough | line-through | initial |
text-decoration: underline, line-through; |
text-transform |
Button,Editor, Entry, Label, SearchBar, SearchHandler | none | default | uppercase | lowercase | initial |
text-transform: uppercase; |
transform |
VisualElement | none , rotate , , rotateX , rotateY , scale , scaleX , , scaleY translate , translateX , translateY ,initial |
transform: rotate(180), scaleX(2.5); |
transform-origin |
VisualElement | double, double | initial |
transform-origin: 7.5, 12.5; |
vertical-align |
Label | left | top | right | bottom | start | center | middle | end | initial |
vertical-align: bottom; |
visibility |
VisualElement | true | visible | false | hidden | collapse | initial |
visibility: hidden; |
width |
VisualElement | double | initial |
width: 320; |
Dekont
initial
tüm özellikler için geçerli bir değerdir. Başka bir stilden ayarlanan değeri temizler (varsayılana sıfırlanır).
Aşağıdaki özellikler desteklenmiyor:
all: initial
.- Düzen özellikleri (kutu veya kılavuz).
- , ve
border
gibifont
kısaltma özellikleri.
Buna ek olarak, değer yoktur inherit
ve bu nedenle devralma desteklenmez. Bu nedenle, örneğin, bir düzende özelliğini ayarlayamaz font-size
ve düzendeki tüm örneklerin Label değeri devralmasını bekleyemezsiniz. Tek özel durum direction
, varsayılan değeri olan özelliğidir inherit
.
Önemli
Span öğeleri CSS kullanılarak hedeflenemez.
.NET MAUI'ye özgü özellikler
Aşağıdaki .NET MAUI'ye özgü CSS özellikleri de desteklenir (Değerler sütununda türler italikken dize değişmez değerleri şunlardırgray
):
Özellik | Şunlara uygulanır | Değerler | Örnek |
---|---|---|---|
-maui-bar-background-color |
NavigationPage, TabbedPage | Renk | initial |
-maui-bar-background-color: teal; |
-maui-bar-text-color |
NavigationPage, TabbedPage | Renk | initial |
-maui-bar-text-color: gray |
-maui-horizontal-scroll-bar-visibility |
ScrollView | default | always | never | initial |
-maui-horizontal-scroll-bar-visibility: never; |
-maui-max-length |
Entry, Editor, SearchBar | int | initial |
-maui-max-length: 20; |
-maui-max-track-color |
Slider | Renk | initial |
-maui-max-track-color: red; |
-maui-min-track-color |
Slider | Renk | initial |
-maui-min-track-color: yellow; |
-maui-orientation |
ScrollView, StackLayout | horizontal | vertical | both | initial . both yalnızca üzerinde ScrollViewdesteklenir. |
-maui-orientation: horizontal; |
-maui-placeholder |
Entry, Editor, SearchBar | tırnak içine alınmış metin | initial |
-maui-placeholder: Enter name; |
-maui-placeholder-color |
Entry, Editor, SearchBar | Renk | initial |
-maui-placeholder-color: green; |
-maui-spacing |
StackLayout |
double | initial |
-maui-spacing: 8; |
-maui-thumb-color |
Slider, Switch | Renk | initial |
-maui-thumb-color: limegreen; |
-maui-vertical-scroll-bar-visibility |
ScrollView | default | always | never | initial |
-maui-vertical-scroll-bar-visibility: always; |
-maui-vertical-text-alignment |
Label | start | center | end | initial |
-maui-vertical-text-alignment: end; |
-maui-visual |
VisualElement | string | initial |
-maui-visual: material; |
.NET MAUI Kabuğuna özgü özellikler
Aşağıdaki .NET MAUI Kabuğu'na özgü CSS özellikleri de desteklenir (Değerler sütununda türler italikken dize değişmez değerleri şunlardırgray
):
Özellik | Şunlara uygulanır | Değerler | Örnek |
---|---|---|---|
-maui-flyout-background |
Shell | Renk | initial |
-maui-flyout-background: red; |
-maui-shell-background |
Element | Renk | initial |
-maui-shell-background: green; |
-maui-shell-disabled |
Element | Renk | initial |
-maui-shell-disabled: blue; |
-maui-shell-foreground |
Element | Renk | initial |
-maui-shell-foreground: yellow; |
-maui-shell-tabbar-background |
Element | Renk | initial |
-maui-shell-tabbar-background: white; |
-maui-shell-tabbar-disabled |
Element | Renk | initial |
-maui-shell-tabbar-disabled: black; |
-maui-shell-tabbar-foreground |
Element | Renk | initial |
-maui-shell-tabbar-foreground: gray; |
-maui-shell-tabbar-title |
Element | Renk | initial |
-maui-shell-tabbar-title: lightgray; |
-maui-shell-tabbar-unselected |
Element | Renk | initial |
-maui-shell-tabbar-unselected: cyan; |
-maui-shell-title |
Element | Renk | initial |
-maui-shell-title: teal; |
-maui-shell-unselected |
Element | Renk | initial |
-maui-shell-unselected: limegreen; |
Color
Aşağıdaki color
değerler desteklenir:
X11
css renkleri ve .NET MAUI renkleri ile eşleşen renkler. Bu renk değerleri büyük/küçük harfe duyarlı değildir.- onaltılık renkler:
#rgb
,#argb
,#rrggbb
,#aarrggbb
- rgb renkleri:
rgb(255,0,0)
,rgb(100%,0%,0%)
. Değerler 0-255 veya %0-100 aralığındadır. - rgba renkleri:
rgba(255, 0, 0, 0.8)
,rgba(100%, 0%, 0%, 0.8)
. Opaklık değeri 0,0-1,0 aralığındadır. - hsl renkleri:
hsl(120, 100%, 50%)
. h değeri 0-360 aralığında, s ve l ise %0-100 aralığında yer alır. - hsla renkleri:
hsla(120, 100%, 50%, .8)
. Opaklık değeri 0,0-1,0 aralığındadır.
Kalın -lığı
Her biri boşlukla ayrılmış bir, iki, üç veya dört thickness
değer desteklenir:
- Tek bir değer tekdüzen kalınlığı gösterir.
- İki değer dikey ve yatay kalınlığı gösterir.
- Üç değer üst, sonra yatay (sol ve sağ) ve ardından alt kalınlığı gösterir.
- Dört değer üst, sonra sağ, sonra alt ve sonra sol kalınlığı gösterir.
Dekont
CSS thickness
değerleri XAML Thickness
değerlerinden farklıdır. Örneğin, XAML'de iki değer Thickness
yatay ve dikey kalınlığı belirtirken, dört değer Thickness
sola, sonra üst, sonra sağa ve sonra alt kalınlık gösterir. Ayrıca, XAML Thickness
değerleri virgülle ayrılmıştır.
İşlevler
Doğrusal ve radyal gradyanlar sırasıyla ve radial-gradient()
CSS işlevleri kullanılarak linear-gradient()
belirtilebilir. Bu işlevlerin sonucu bir denetimin özelliğine background
atanmalıdır.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin